好了,標題是propably不清楚,這裏是我想做的事: 我有ListView和每一行裏面有一些文字和一個按鈕。我設置監聽到每個按鈕(在我的自定義列表適配器)這樣的:獲取數據對象
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater li;
li = LayoutInflater.from(context);
convertView = li.inflate(R.layout.list_item, null);
}
Item elem = elems.get(position);
TextView mainText = (TextView) convertView.findViewById(R.id.main_text);
TextView sideText = (TextView) convertView.findViewById(R.id.side_text);
mainText.setText(elem.desc);
sideText.setText(timestampToString(elem.date));
Button againButton = (Button) convertView
.findViewById(R.id.itemAgainButton);
againButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// onClick actions
}
});
現在的onClick方法內我需要存取權限從當前行創建項目對象。我不確定是否清楚我想要做什麼。這裏我設置上的ListView元素聽衆在我的活動類
lista.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Item item = (Item) parent.getItemAtPosition(position);
Intent i = new Intent(getApplicationContext(),
DidItItemActivity.class);
i.putExtra("id", item.id);
startActivity(i);
}
});
,我可以使用parent.getItemAtPosition(position)
這給了我正是我需要的。我怎麼能在Adapter類中做同樣的事情?