我的ListView上有以下ClickListener。我的项目布局是一个包含3个TextViews的RelativeLayout。我正在尝试返回列表项的值,但我得到“android.widget.TextView@44ed ....”。我做错了什么?
itemList=(ListView)findViewById(android.R.id.list);
itemList.setTextFilterEnabled(true);
itemList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
Intent intent = new Intent();
Bundle b = new Bundle();
b.putString("TEXT", ((RelativeLayout) v).getChildAt(position).toString());
intent.putExtras(b);
setResult(SUCCESS_RETURN_CODE, intent);
finish();
}
});
答案 0 :(得分:2)
您应该使用TextView.getText():
RelativeLayout relativeLayout = (RelativeLayout) v;
TextView textView = (TextView) relativeLayout.getChildAt(position);
b.putString("TEXT", textView.getText());
答案 1 :(得分:0)
b.putString(“TEXT”,((RelativeLayout)v).getChildAt(position).toString();而是尝试这样做
b.putString(“TEXT”,(a.getItemAtposition(position).toString);
如果这不起作用,请提供有关错误的更多信息。希望这有帮助