2011-09-12 80 views
0

我想在自定義對話框中使用QuickContactBadge。當我嘗試修改qcb時,它總是崩潰,但我找不到原因。誰能幫忙?先謝謝你。QuickContactBadge在自定義對話框中

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); 
+0

你可以發佈錯誤日誌嗎? – PedroAGSantos

回答

0

你一定會得到一個NullPointerException。在對話框對象上調用findViewById()

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

謝謝userSeven7s:),它現在在工作,我犯了這麼愚蠢的錯誤:( – Michalsx