這可能聽起來很愚蠢,但我無法用頭包裹它。如何找出什麼意圖回調參考什麼
我有一個自定義的ListAdapter,用圖像,文本和其他所有由我的模型構成的東西填充行。現在我希望當你點擊列表中的(任何)圖像時,相機將打開並且用戶應該能夠拍照,然後被點擊的圖像應該顯示與凸輪一起拍攝的圖像。得到它?
現在,在適配器我只是做這樣的事情:
public View getView(int position, View convertView, ViewGroup parent) {
...stuff...
ImageView image = (ImageView) elementView.findViewById(R.id.element_image);
image.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
((Activity) context).startActivityForResult(takePicture, 0);
}
...other stuff...
});
我添加每個ImageView的一個選項的onClick可以打開攝像頭,讓用戶拍照。 問題是上下文(我的MainActivity)在方法'onActivityResult'上得到回調,但我怎麼知道哪個回調屬於哪個ImageView?
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent)
是否可以在意圖內發送引用? 或者它應該如何知道哪個意圖呼叫屬於哪個ImageView?
我希望你明白我的問題。否則就問。預先感謝您;)
好主意,但有沒有一個簡單的解決方案?這更像是一個黑客。 – StupidBird
您也可以使用requestCode來回傳遞您的位置。查看編輯。我不認爲你可以將它作爲一個參數添加到你的意圖中,因爲你無法控制攝像機應用程序返回的意圖 – Entreco
@StupidBird不是黑客,這就是android的工作方式:)傳遞intent,parcelables,捆綁活動之間。 – t0mm13b