2016-03-26 138 views
0

尝试使用片段中的数据获取列表视图。 通过我知道的代码我应该工作,但事实并非如此。 Als试图使用ListFragment而不是使用Fragment和BaseAdapter而不是ArrayAdapter,但两者都不起作用。包含ListView的Android片段

片段

public class ContactsFragment extends Fragment { 
    private DashboardActivity dashboard; 
    private List<User> contacts; 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.fragment_contacts, container, false); 
    ... 
    ... 
    ListView contactsListView = (ListView)rootView.findViewById(R.id.contacts_list_view); 

    ContactsListAdapter contactsListAdapter = new ContactsListAdapter(getActivity(), contacts); 

    contactsListView.setAdapter(contactsListAdapter); 

    return rootView; 
} 

适配器

public class ContactsListAdapter extends ArrayAdapter<User> { 

    private Context context; 
    private List<User> contacts; 

    public ContactsListAdapter(Context context, List<User> contacts) { 
     super(context, R.layout.contact_list_item); 

     this.context = context; 
     this.contacts = contacts; 
    } 
    @Override 
    public View getView(int position, View convertView, ViewGroup viewGroup) { 
    User contact = contacts.get(position); 

    View contactView = convertView; 

    if (contactView == null) { 
     LayoutInflater inflater = (LayoutInflater)context.getSystemService(context.LAYOUT_INFLATER_SERVICE); 
     contactView = inflater.inflate(R.layout.contact_list_item, null); 
    } 

    TextView contactEmail = (TextView)contactView.findViewById(R.id.contact_item_email); 
    contactEmail.setText(contact.getEmail()); 

    TextView contactPhone = (TextView)contactView.findViewById(R.id.contact_item_phone); 
    contactPhone.setText(contact.getPhone()); 

    return contactView; 
} 

我错过了财产以后?也许使用其他基类? 如果我的问题不清楚,这里没有足够的信息帮助,请告诉我!

在此先感谢

回答

1

试试这个:

public ContactsListAdapter(Context context, List<User> contacts) { 
    super(context, R.layout.contact_list_item,contacts); //change here 
    this.context = context; 
    this.contacts = contacts; 
} 
+0

嗷的人,我很愚蠢。只是找不到问题。 非常感谢帮助我在这里! –