1

是ContactsContract.Contacts默认为空吗?如果是这样,我该如何添加一些测试数据呢?是ContactsContract.Contacts默认为空吗?

否则,我必须做一些错误的/省略一些东西,因为这个活动显示完全是空的。

public class Authorize_Activity extends ListActivity { 

    Cursor mContacts; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     // Return all contacts, ordered by name 
     String[] projection = new String[] { ContactsContract.Contacts._ID, 
       ContactsContract.Contacts.DISPLAY_NAME }; // Would like the phone num, too 
     mContacts = managedQuery(ContactsContract.Contacts.CONTENT_URI, 
       projection, null, null, ContactsContract.Contacts.DISPLAY_NAME); 

     // Display all contacts in a ListView 
     SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, 
      android.R.layout.simple_list_item_1, mContacts, 
       new String[] { ContactsContract.Contacts.DISPLAY_NAME }, 
       new int[] { android.R.id.text1 }); 

     setListAdapter(mAdapter); 
    } 

我的理解是,android的simple_list_item_1应该提供“View”,这样我就不需要调用SetContentView()。

虽然我的活动正在显示,但没有数据显示在其中。所以......我只是想念联系人数据,或者是更加邪恶的事情?

+0

不确定 - 这是在模拟器上吗?如果是这样的话,如果它默认为空,它不会让我感到惊讶。尝试使用模拟器的联系人/人应用添加一些假冒的联系人。 – Squonk 2012-02-06 03:32:21

+0

就是这样;假设他们(Googlers/Androidheads)会为模拟器提供一些随机/伪造的联系人,例如Sergey Brin,Larry Page,Jimmy Page等。一旦我添加了一些(不是那些),它似乎工作正常。 – 2012-02-07 01:42:12

+0

我已将我的评论添加为答案。看起来它可能对未来的其他人有用。 – Squonk 2012-02-07 03:02:31

回答

1

这是模拟器吗?

如果是这样的话,如果默认情况下联系人列表为空,则不会感到意外。尝试使用模拟器的联系人/人应用添加一些假冒的联系人。