В моем списке использования программ и адаптере .in item_list.xml есть текстовое представление (cod, time, ...) и изображение (editicon). Теперь я хочу, чтобы при нажатии на pictur. What is in cod textview и Other other textview отправлялось другое действие. Как я могу отправить все содержимое текстовых представлений. Я просто понимаю, отправляю одно содержимое текстового сообщения с помощью putextra.Спасибо, дорогие друзья
открытый класс ContactAdapter расширяет ArrayAdapter { личный список контактов;
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);
}
}
}
опубликовать полную трассировку logcat
Похоже, что вы ищете ListView в выбранном вами просмотре, то есть editicon. Это не удастся.
Вам нужно активировать намерение в вашей реализации onClick в классе ViewHolder.
@Override
public void onClick(View view) {
Intent intent12 = new Intent(getContext(), Cod.class);
getContext().startActivity(intent12);
}
Возможный дубликат Как передавать данные между Activity в приложении Android?