大家好,我是stackoverflow的新手,也是关于android开发的..
这是我的问题:我有一个 jsoncall 的结果,它是一个包含一系列对象的数组,所有对象都有它们的属性。我希望一个列表视图出现在我的包含-object.name-s 的活动中。当我单击一个列表项时,所选项目的 -object.id- (而不是其中的对象,不是位置,而是存储在 mysql 中并且我使用 jsoncall 的对象 ID)有意发送给另一个活动,然后将显示所有对象详细信息。它还可以发送整个对象,这样我就不必在第二个活动中调用 json 来获得详细信息(也许)。
这就是我要的。我试图在没有自定义类的情况下做所有事情,但失败了。所以我还使用一个名为 Event 的类进行了一些测试。这是:ArrayList event_name=new ArrayList();
try{
jArray = new JSONArray(result);
JSONObject json_data=null;
Event event;
for(int i=0;i<jArray.length();i++){
json_data = jArray.getJSONObject(i);
event = new Event (json_data.getInt("IDEvent"), json_data.getString("NameEvent"));
event_name.add(event.getName());
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, R.layout.row, R.id.textViewList, event_name);
listView.setAdapter(arrayAdapter);
listView.setOnItemClickListener(new OnItemClickListener(){
public void onItemClick(AdapterView <?> parent, View view, int position, long id){ ....problem is here.... }
}//end for loop
使用此解决方案,列表视图可以正常工作,并且可以正确显示对象名称。但我找不到做 onClick 事件的方法..
Event eventOut = (Event) parent.getAdapter().getItem(position);
有了这个然后 getID 应用程序就会崩溃,如果我尝试传递整个对象也是如此。getName() 和 getID() 在 Event 类中实现。
private int getID(){ return IDEvent; }
private String getName(){ return NameEvent; }
如果有人可以帮助我,我感激不尽!!!