У меня есть настраиваемое представление xml, при нажатии кнопки в основном представлении создается дубликат.
Button addButton = (Button) findViewById(R.id.btnAdd);
addButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
LinearLayout newCard = (LinearLayout) getLayoutInflater().inflate(R.layout.vehicle, null);
cardLayout.addView(newCard);
final int thisCarId = new Random().nextInt(10000);
}
});
Пользователь может нажимать кнопку addButton столько раз, сколько захочет, и каждый раз я создаю новую карту newCard.
Каждая новая карта имеет ImageButton и EditText; когда нажимается кнопка ImageButton, я запускаю намерение камеры с результатом:
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(takePictureIntent, thisCarId);
Позже в этом классе действий я ожидаю результат действия камеры:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.v("car", "The ID that was returned: " + requestCode);
}
Мой журнал ДЕЙСТВИТЕЛЬНО определяет, какой экземпляр newCard, посредством thisCardId... но как я могу определить, какая newCard была создана, чтобы я мог установить ImageButton, найденный в этом макете newCard, в соответствии с фотографией камеры? Назначение фотографии не проблема... просто я не знаю, какую из них назначить, потому что onActivityResult выходит за рамки, и, насколько я могу судить, я не могу назначить анонимное переопределение для действия. в целом...
OnClickListener
наActivity
? Если это так, просто пусть вашActivity
реализует интерфейсView.OnClickListener
. - person Squonk   schedule 03.08.2013