Reputation: 21
Why I am unable to get listview in the fragment. I have created the list along with the items. I have added items but unable to understand this. Please help me out to understand it. I have copied it and edited it.
Here's my code:
public class NewsFragment extends Fragment {
private ListView mListView;
private List<String> mNewsList;
public NewsFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View frag = inflater.inflate(R.layout.fragment_news, container, false);
mListView = (ListView) frag.findViewById(R.id.MyListView);
mNewsList = new ArrayList<String>();
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
mNewsList.add("gjjggj");
// mListView.setAdapter(new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1,android.R.id.text1,mNewsList));
mListView.setAdapter(new MyAdapter());
return frag;
}
private class MyAdapter extends BaseAdapter{
@Override
public int getCount() {
return mNewsList.size();
}
@Override
public Object getItem(int position) {
return mNewsList.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View rowview = getActivity().getLayoutInflater().inflate(R.layout.row,null);
return rowview;
}
}
}
Any suggestions?
Upvotes: 0
Views: 42
Reputation: 257
You are just adding adapter to listview but no data resourcing are there is adapter..
mListView.setAdapter(new MyAdapters());
try to use arrayAdapter for data-source like String array
mListView.setAdapter(new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, android.R.id.text1, mNewsList));
and mNewsList should be String[].
Upvotes: 2