我在我的代碼中包含2個按鈕和2個TextView的列表視圖。我想通過點擊按鈕訪問每個textView的文本。這裏是適配器的代碼...從getItem()創建對象並訪問字段
public class TracksAdapter extends SimpleAdapter {
public TracksAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final TracksAdapter proxy = this;
final View trackView = super.getView(position, convertView, parent);
Button dl = (Button) trackView.findViewById(R.id.dl);
dl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Do something with data : proxy.getItem(position)
TextView tv = (TextView) trackView.findViewById(R.id.track);
String track = tv.getText().toString();
Toast.makeText(getApplicationContext() , track , Toast.LENGTH_LONG);
}
});
Button play = (Button) trackView.findViewById(R.id.play);
play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Do something with data : proxy.getItem(position)
Toast.makeText(getApplicationContext() , String.valueOf(proxy.getItem(position)).indexOf("file=") , Toast.LENGTH_LONG);
}
});
return trackView;
}
}
的proxy.getItem(position)
的結果是一樣的東西{id=4 , name=foo , track=fofoo}
我應該怎麼做訪問「富」 ????
'proxy.getItem(位置).name' – Pat
我已經嘗試過,但沒有指定名稱。這是不正確的。 –
你指的是'iosched'的TracksAdapter?如果是這樣,那麼在該類中沒有名爲'name'的字段。請參閱其API。如果是你自己的班級,請發佈其代碼。 – Pat