Android 显示光标位置而不是值

Android 显示光标位置而不是值,android,list,cursor,Android,List,Cursor,我有以下代码: public void onItemClick(AdapterView<?> parent, View view, int position, long id) { mSelectedContact = (NameOfList)parent.getItemAtPosition(position); if(mSelectedContact != null){ String dn = mSelectedContact.getDisplayName();

我有以下代码:

public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  mSelectedContact = (NameOfList)parent.getItemAtPosition(position);
  if(mSelectedContact != null){
    String dn = mSelectedContact.getDisplayName();

    // Talking about this line here:
    String num = (mSelectedContact.getPhoneNumbers().toString()); 

    Log.i(TAG, dn + num);
    setContentView(R.layout.main1);
    LinearLayout mainLayout = (LinearLayout)findViewById(R.id.main_layout_id);
    LinearLayout Details = (LinearLayout)getLayoutInflater().inflate(R.layout.layout_item, null);
    TextView DisplayName = (TextView)Details.findViewById(R.id.contactsListView);                                       
    DisplayName.setText((dn) + (num));

    mainLayout.addView(Details);
  }
}
};

如何获取数字的值?

也许您只需要编写字符串num=(mSelectedContact.getPhoneNumbers());
没有toString(),因为在Java中,toString()方法返回对象的字符串表示形式,如android@40598908.

返回的方法是什么?
getPhoneNumbers
返回所选联系人的电话号码列表,但如果我这样做,我不确定它是什么类型(即int,string),我得到错误:类型不匹配:无法从列表转换为字符串。如果我将类型更改为List,结果显示与上面相同。方法mSelectedContact.getPhoneNumber()返回PhoneNumber对象的列表。因此,在代码中需要编写List num=mSelectedContact.getPhoneNumber();然后您的PhoneNumber对象必须有一个方法,该方法以字符串形式返回该电话号码,例如.getPhoneNumber()。然后你需要打电话给它,你会得到你想要的电话号码,谢谢你让我更好地理解它!唯一的问题是,代码没有一个将所有数字作为字符串返回的方法,它只有一个用于主要数字的方法:公共字符串getPrimaryNumber(){final PhoneNumber primaryNumber=ListUtils.getFirstOrDefault(mPhoneNumbers,new PhoneNumberFilterByValid());if(primaryNumber!=null){返回primaryNumber.getNumber()}返回null;}我如何修改所有数字,而不仅仅是第一个或默认值?我认为如果您只返回第一个或默认值是可以的。我需要访问所有数字:)我可以轻松地完成默认值!
John Doe[android@40598908, android@40598800]