2011-10-31 134 views
0

好吧,只需要知道,我复制粘贴来自android网站的代码,所以我不认为有什么问题。对话框崩溃的应用程序

问题是,当我按下按钮时,它崩溃了。它从对话框代码崩溃,因为我没有任何其他的东西。

的代码是:

MainDialog.xml:

  <?xml version="1.0" encoding="utf-8"?> 
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/layout_root" 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:padding="10dp" 
      > 
      <ImageView 
      android:id="@+id/image" 
      android:layout_width="wrap_content" 
      android:layout_height="fill_parent" 
      android:layout_marginRight="10dp" 
      /> 
      <TextView android:id="@+id/text" 
      android:layout_width="wrap_content" 
      android:layout_height="fill_parent" 
      android:textColor="#FFF" 
      /> 

      </LinearLayout> 

而上的情况是BUTTON1按下:

    Context mContext = getApplicationContext(); 
     Dialog dialog = new Dialog(mContext); 

     dialog.setContentView(R.layout.maindialog); 
     dialog.setTitle("Custom Dialog"); 

     TextView text = (TextView) dialog.findViewById(R.id.text); 
     text.setText("Hello, this is a custom dialog!"); 
     ImageView image = (ImageView) dialog.findViewById(R.id.image); 
     image.setImageResource(R.drawable.icon);  
     dialog.show(); 
+0

你有回答吗? –

回答

1

您使用Activity背景和添加一个调用dialog.show();

Context mContext = this; //Assumes you are calling this from within an activity 
    Dialog dialog = new Dialog(mContext); 

    dialog.setContentView(R.layout.maindialog); 
    dialog.setTitle("Custom Dialog"); 

    TextView text = (TextView) dialog.findViewById(R.id.text); 
    text.setText("Hello, this is a custom dialog!"); 
    ImageView image = (ImageView) dialog.findViewById(R.id.image); 
    image.setImageResource(R.drawable.icon);  
    dialog.show(); 
+0

好吧现在它在那里。但它崩溃!我会把日志放在第一篇文章中。 – user1015311

+0

您需要使用'Activity'上下文而不是'getApplicationContext()'。如果你正在一个活动中运行这一切,你可以调用'对话框对话框=新对话框(这个);' – plowman

+0

像一个魅力工作很多! – user1015311