Мне очень жаль мой плохой английский, но вот моя проблема:
Я использую собственный ListView, такой как ArrayAdapter, и создаю свой ArrayAdapter в качестве стажерского класса в моей основной деятельности следующим образом:
/*This is my Main Activity*/
public class KhassaideActivity extends Activity {
ViewHolder holder;
KhassaideAdapterbi listadapter ;
ListView l ;
@Override
protected void onCreate(Bundle savedInstanceState) {
l= (ListView) findViewById(R.id.listDieuzbou);
listadapter = new KhassaideAdapterbi(this, R.layout.affichage_khassaide, rowItems);
l.setAdapter(listadapter);
}
/*This is my intern class ArrayAdapter*/
private class KhassaideAdapterbi extends ArrayAdapter<RowItem>{
Context context;
public KhassaideAdapterbi(Context context, int resourceId,
List<RowItem> items) {
super(context, resourceId, items);
this.context = context;
}
public class ViewHolder {
ImageView imageView;
TextView trad;
TextView trans;
TextView number;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
RowItem rowItem = getItem(position);
LayoutInflater mInflater = (LayoutInflater) context
.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
holder = new ViewHolder();
convertView = mInflater.inflate(R.layout.affichage_khassaide, null);
holder.number = (TextView) convertView.findViewById(R.id.number);
holder.trad = (TextView) convertView.findViewById(R.id.traduction);
holder.trans = (TextView) convertView.findViewById(R.id.transcription);
holder.imageView = (ImageView) convertView.findViewById(R.id.arabe);
convertView.setTag(holder);
}
else
holder = (ViewHolder) convertView.getTag();
holder.trad.setText(rowItem.getTitle());
holder.trans.setText(rowItem.getDesc());
holder.imageView.setImageResource(rowItem.getImageId());
holder.number.setText(rowItem.getNumber());
return convertView;
}
}
Итак, в моей основной деятельности я хочу получить доступ и поделиться значениями двух TextView, когда пользователь нажимает на такой элемент меню:
case R.id.action_share:
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, listadapter.holder.trad.getText());
sendIntent.setType("text/plain");
startActivity(Intent.createChooser(sendIntent, getResources().getText(R.string.send_to)));
Но я получаю NullPointerException в этой строке listadapter.holder.trad.getText()
У кого-нибудь есть решение для этого? Заранее спасибо. И извините еще раз за этот плохой английский