public class ListItem
{
public int sname;
public int s_img;
public String sid;
}
Class xyz extends ListActivity
{
.
.
.
protected void onListItemClick(ListView l, View v, int position, long id)
{
//super.onListItemClick(l, v, position, id);
Toast.makeText(ListPage.this,items.get(position).sid,Toast.LENGTH_SHORT).show();
Intent intent = new Intent(v.getContext(),DisplayScheme.class);
startActivityForResult(intent,0);
}
}
我希望从上面的 xyz 类开始一个新的活动。当单击列表中的一项时,应启动 Activity。在下一个活动中,我希望显示“ListItem”对象的更多详细信息,即。s_img 和 sname;有没有办法可以将 CLICKED ListItem 对象传递给下一个 DisplayScheme 活动?因为在下一个活动中无法找出在之前的活动中单击了哪个项目。提前致谢。
............. 已编辑 ....
protected void onListItemClick(ListView l, View v, int position, long id)
{
//super.onListItemClick(l, v, position, id);
Toast.makeText(ListPage.this, items.get(position).sid, Toast.LENGTH_SHORT).show();
Intent intent = new Intent(v.getContext(),DisplayScheme.class);
intent.putExtra("positionIdentifier",v.getTag());
startActivityForResult(intent,0);
}
这是我编辑的 onListItemClick。现在我在“intent.putextra”行上收到一个错误,上面写着“Intent 类型中的 putExtra(String, boolean) 方法不适用于参数 (String, Object)”
..................更多编辑..数组适配器......
public class MyAdapter extends BaseAdapter
{
LayoutInflater inflater;
List<ListItem> items;
public MyAdapter(Activity context, List<ListItem> items)
{
super();
this.items = items;
this.inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount()
{
// TODO Auto-generated method stub
return items.size();
}
@Override
public Object getItem(int position)
{
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position)
{
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent)
{
ListItem item = items.get(position);
View vi=convertView;
if(convertView==null)
vi = inflater.inflate(R.layout.list_row, null);
ImageView imgv = (ImageView)vi.findViewById(R.id.s_name);
imgv.setImageResource(item.sname);
return vi;
}
}
这是我的 MyAdapter 类,我到底需要在哪里进行更改,例如“setTag()”或类似 dat 的东西?