首先,设想如下:
我有一个列表,每个项目都有一个联系人的照片和一些文字。我想点击图片并打开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有任何布局逻辑吗?当我点击图像,我需要计算徽章的位置和调整,还是它是内置的?发布于 2011-05-17 22:00:34
中止!中止!
基本上,我完全误解了徽章是什么以及如何使用它。我想要做的是检测到点击图像并调用徽章。这是根本错误的,因为我所需要做的就是在代码中简单地使用QuickContactBadge而不是ImageView。在我用项目中的徽章替换了图像之后,XML魔术就自动出现了。
说-可以使用代码弹出徽章,请参考这篇文章关于如何实现它。
https://stackoverflow.com/questions/6021339
复制相似问题