所以我想做的是点击一个项目获得一个String值。 但通过这段代码,当我点击项目时,我得到转换器类的位置或类似的东西,我不明白。 吐司中的“MainActivity $ Converter @ 30e6eb1”。我只想让主题部分出现在Toast中。
{{1}}
}
答案 0 :(得分:2)
更改
String item = String.valueOf(parent.getItemAtPosition(position));
到
String item = ((Converter)parent.getAdapter().getItem(position)).getSubject()
答案 1 :(得分:1)
将Converter对象传递给CustomAdapter以列出它们。因此,如果你调用getItem,你必须将Object连接到Converter。所以;
变化
String item = String.valueOf(parent.getItemAtPosition(position));
到
String item = ((Converter)parent.getAdapter().getItem(position)).getSubject();
所以最终代码:
listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String item = ((Converter)parent.getAdapter().getItem(position)).getSubject();
Toast.makeText(getApplicationContext(),item, Toast.LENGTH_LONG).show();}
});
答案 2 :(得分:0)
parent.getItemAtPosition(位置);无论你从getItem(position)返回什么,都返回at位置的对象。
Converter item =(Converter)parent.getItemAtPosition(position);
Toast.makeText(getApplicationContext(),item.getSubject(),Toast.LENGTH_LONG)。show();