Hallo Freunde bitte helft mir ich benutze die Recycling-Ansicht, die eine Überschrift und eine andere horizontale Recycling-Ansicht, wo ich die Daten mit Json bevölkern mein Problem ist, dass in der horizontalen Recycling-Ansicht bekomme ich nur letzten Wert in dem finden sie bitte den untenstehenden code.Recycler in den Viewholder
Hier Layout, das
Menu_Item_List.java
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.AppCompatTextView
android:id="@+id/menu_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@drawable/cater_bg"
android:padding="4dp"
android:text="Break Fast"
android:textSize="18sp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/menu_item_rv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp" />
</LinearLayout>
Menu.java
public class Menu_Fragment extends Fragment {
@BindView(R.id.menu_rv)
RecyclerView menu_rv;
FastItemAdapter<Menu_List_Item> menu_item_adapter = new FastItemAdapter<>();
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.menu_fragment, container, false);
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
ButterKnife.bind(this, view);
menu_rv.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false));
menu_rv.setAdapter(menu_item_adapter);
menu_list();
}
private void menu_list() {
// String menuurl = Constant.aloourl + "shop_menu&vendor_id=" + getActivity().getIntent().getStringExtra("catergoryid") + "&type=2";
String menuurl = Constant.aloourl + "shop_menu&vendor_id=32&type=2";
Constant.l(menuurl);
AndroidNetworking.get(menuurl).build().getAsJSONObject(new JSONObjectRequestListener() {
@Override
public void onResponse(JSONObject response) {
try {
JSONArray menuarray = response.getJSONArray("mlist");
for (int i = 0; i < menuarray.length(); i++) {
JSONObject menuobjarray = menuarray.getJSONObject(i);
Iterator menuiterator = menuobjarray.keys();
while (menuiterator.hasNext()) {
String menuname = (String) menuiterator.next();
Menu_List_Item menulist = new Menu_List_Item();
menulist.setMenuname(menuname);
JSONArray menuarrayname = menuobjarray.getJSONArray(menuname);
for (int j = 0; j < menuarrayname.length(); j++) {
JSONObject menunameobjs = menuarrayname.getJSONObject(j);
Menu_Item_Adapter mealslist = new Menu_Item_Adapter();
mealslist.setMenu_item_id(menunameobjs.getString("mid"));
mealslist.setMenu_item_name(menunameobjs.getString("item"));
mealslist.setMenu_item_price(menunameobjs.getString("price"));
mealslist.setMenu_item_image(menunameobjs.getString("restaurant_subimage"));
menulist.setMenu_adapter(mealslist);
}
menu_item_adapter.add(menulist);
}
}
} catch (JSONException e) {
Constant.l(e.toString());
}
}
@Override
public void onError(ANError anError) {
Constant.l(anError.toString());
}
});
}
}
Menu_Adapter.java
brauchen
können Sie es tun, erfordert nur einzelne recylerview. In der ersten Artikelansicht für die Kopfzeile und der zweiten Artikelansicht können Sie den Artikeltyp in der Recyleransicht festlegen. Sie können die horizontale Bildansicht verwenden. – Vij
Sie sagen, dass ich zwei Layout richtig verwenden kann? @Vij –
ja bcoz es ist einfacher Weg – Vij