Первый сценарий:
У меня есть список, где у каждого элемента есть фотография контакта и некоторый текст. Я хотел бы нажать на изображение и вызвать QuickContactBadge
. Значок определяется следующим фрагментом XML
<QuickContactBadge android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/badge"
android:layout_alignParentBottom="true"></QuickContactBadge>
То, что я попробовал и потерпело неудачу:
- Определите один значок многократного использования и используйте его для всех случаев. И список, и значок размещены в
RelativeLayout
- Определите один значок для каждого элемента списка. Предмет использует
RelativeLayout
Что я вижу:
В основном ничего. Код получает действительный экземпляр значка, а затем я применяю следующую логику
contactPhoto.setOnClickListener(new OnClickListener() {
@Override
public void onClick(final View v) {
Log.d(TAG, "Image click");
if (badge != null) {
badge.assignContactFromEmail("johndoe@gmail.com", true);
badge.setMode(ContactsContract.QuickContact.MODE_SMALL);
badge.bringToFront();
}
}
});
Когда я нажимаю, я могу пройти по коду в обработчике onClick
, но значок никогда не появляется
Вопросы:
- Есть ли у
QuickContactBadge
логика размещения? Когда я нажимаю на изображение, мне нужно рассчитать положение значка и перенастроить его или оно встроено?
- Можно ли добиться того, что я описал выше (значок для изображений, отображаемых в списке) и что я делаю неправильно (или отсутствует)