Search code examples
androidlistviewandroid-fragmentactivity

Can not dipslay textviews on top of the screen


Hello ladies and gentlmen,

Though I can receive data (reservations) on my screen, however I can not display some textviews on the screen.

public class Res extends Fragment {

    ListView lview;
    ListAdapter adapter;
    ProgressDialog loading;

    @Override
    public View onCreateView(LayoutInflater inflater,
                             ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.reslist, container, false);
        lview = view.findViewById(R.id.lview);

        getReservations();
        return view;

here If I inflate fragment_reservation instead of reslist , I can display textviews,but I can display listview.

and here my listadapter code;

adapter = new SimpleAdapter(getActivity(),list,R.layout.fragment_reservations,
                new String[]{"name", "email", "phone", "arriving", "departure", "pax", "roomtype", "rate"}, new int[]{R.id.textView, R.id.textView2, R.id.textView3, R.id.textView4, R.id.textView5, R.id.textView6, R.id.textView7, R.id.textView8});


        lview.setAdapter(adapter);
        loading.dismiss();

maybe problem about getActivty() and I need to use different method calling..

Thanks in advance...

       here the photo of the screen

SCREEEN


Solution

  • I think problem is with parameter "list"(ArrayList) while creating SimpleAdapter object. Here is my code to do the same thing, it is working fine.

    public class BlankFrag extends Fragment {
    private View v;
    private ListView listView;
    public View onCreateView(LayoutInflater inflater,
                                ViewGroup container,
                                Bundle savedInstanceState){
    
        v = inflater.inflate(R.layout.blank_fragment, container, false);
        listView = v.findViewById(R.id.dummy_list);
    
        ArrayList<HashMap<String, String>> list = new ArrayList<>();
    
        //populating dummy content
        for(int i=0; i<5; i++){
            HashMap<String, String> temp = new HashMap<>();
            temp.put("name", "name"+Integer.toString(i));
            temp.put("sname", "sname"+Integer.toString(i));
            list.add(temp);
        }
    
        SimpleAdapter adapter = new SimpleAdapter(getActivity(), list, R.layout.single_item, new String[]{"name", "sname"}, new int[]{R.id.name, R.id.sname});
    
        listView.setAdapter(adapter);
    
        return v;
        }
    }