自定义对话框中的QuickContactBadge

时间:2011-09-12 09:20:09

标签: android dialog quickcontactbadge

我正在尝试在自定义对话框中使用QuickContactBadge。当我尝试修改qcb时,它总是崩溃,但我找不到原因。有人可以帮忙吗?提前谢谢。

custom_xml.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="@+id/layout_root"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<QuickContactBadge 
android:id="@+id/quickContactBadge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/quick_contact_badge"
android:padding="5dp"
></QuickContactBadge>
</RelativeLayout>

Java代码:

Dialog dialog = new Dialog(NameOfActivity.this);
dialog.setContentView(R.layout.custom_xml);
dialog.show();

QuickContactBadge qcb = (QuickContactBadge) findViewById (R.id.quickContactBadge); 
//This make app always crash
qcb.setMode(ContactsContract.QuickContact.MODE_LARGE); 
qcb.assignContactFromPhone("12345678", true);  
qcb.setImageResource(R.drawable.icon);

1 个答案:

答案 0 :(得分:0)

您必须获得NullPointerException。在对话框对象上调用findViewById()

QuickContactBadge qcb = (QuickContactBadge) 
                                 dialog.findViewById (R.id.quickContactBadge);