在我的程序中,使用列表和适配器。在item_list.xml中有文本视图(cod、时间…(和图片(editicon(。现在,我想当我点击pictur.cod文本视图和其他文本视图中的内容发送另一个活动。如何发送文本视图的所有内容。我只是理解用putextra发送一条短信的内容。感谢亲爱的朋友
公共类ContactAdapter扩展ArrayAdapter{private列出联系人;
public ContactAdapter(Context context, List< MyContact> contacts) {
super(context,R.layout.item_list,contacts);
this.contacts=contacts;
}
@NonNull
@Override
public View getView(int position, View convertView, ViewGroup parent) {
MyContact contact = contacts.get(position);
ViewHolder holder;
if(convertView == null){
LayoutInflater inflater = (LayoutInflater)
getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.item_list, parent, false);
holder = new ViewHolder();
holder.companyname = (TextView) convertView.findViewById(R.id.companyname);
holder.cod = (TextView) convertView.findViewById(R.id.cod);
holder.bigan = (TextView) convertView.findViewById(R.id.bign);
holder.stop = (TextView) convertView.findViewById(R.id.stop);
holder.time = (TextView) convertView.findViewById(R.id.time);
holder.date = (TextView) convertView.findViewById(R.id.date);
holder.price = (TextView) convertView.findViewById(R.id.price);
holder.editicon = (ImageView) convertView.findViewById(R.id.imageView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.fill(contact);
return convertView;
}
private class ViewHolder implements View.OnClickListener {
public TextView companyname;
public TextView cod;
public TextView bigan;
public TextView stop;
public TextView date;
public TextView time;
public TextView price;
public ImageView editicon;
public void fill(MyContact contact) {
companyname.setText(contact.getCompany());
cod.setText(contact.getCod());
time.setText(contact.getTime());
date.setText(contact.getDate());
bigan.setText(contact.getBigan());
stop.setText(contact.getStop());
price.setText(contact.getPrice());
editicon.setTag(contact.getCod());
// editicon.setTag(contact.getBigan());
editicon.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String codearash = (String) v.getTag();
Intent intent12 = new Intent(getContext(), Cod.class);
intent12.putExtra("keycod", codearash);
getContext().startActivity(intent12);
}
}
}
您所要做的似乎是在单击的视图中查找一个ListView
,即editicon
。这将失败。
您需要在ViewHolder
类的onClick
实现中激发intent。
@Override
public void onClick(View view) {
Intent intent12 = new Intent(getContext(), Cod.class);
getContext().startActivity(intent12);
}