2013-03-23 97 views
0

我正在製作一個自定義alertdialog有一個圖像。我面臨的問題如下:Android AlertDialog問題與ImageView

1)對於屏幕較小的設備,此警報對話框看起來太大。 aletdialog按鈕不在屏幕上(正面和負面的按鈕)。

2)alertdialog正在繪製兩次。即有兩個alertdialogs一個在另一個上,我必須點擊正面按鈕兩次才能關閉它們。

這裏是alertdialog代碼: -

AlertDialog.Builder alertdialog = new AlertDialog.Builder(
        Activity.this); 
      alertdialog.setTitle("Title "); 
      alertdialog.setMessage("The MEssage "); 


      LayoutInflater layoutinf= LayoutInflater.from(Activity.this); 
      final View view = layoutinf.inflate(R.layout.layoutfile, null); 
      alertdialog.setView(view); 
      alertdialog.setPositiveButton("Button1", 
        new DialogInterface.OnClickListener() { 
         @Override 
         public void onClick(DialogInterface dialog, 
           int which) { 
          //do something 
         } 
        }); 
    alertdialog.show(); 

任何指針將會很有幫助。

感謝

+0

詳細信息您提供的是不利於我們找出問題 – Pragnani 2013-03-23 17:30:32

+0

嗨Pragnani, 問題1中,alertdialog箱正面和負面的按鈕超出了小屏幕設備的屏幕。是否有任何屬性可以設置,以確保完整的alertdialog(包括圖像和按鈕)完全不會被裁剪。 – learner 2013-03-23 18:01:58

+0

不要在xml中設置視圖及其子項的固定高度和寬度。 – Pragnani 2013-03-23 18:11:16

回答

1

對於第二個問題的警告對話框應該是這樣的:

AlertDialog.Builder alertdialog= new AlertDialog.Builder(this); 
alertdialog.setTitle("Title"); 
alertdialog.setPositiveButton("OK", okListener); 
alertdialog.setNegativeButton("Cancel", cancelListener); 
AlertDialog alertdialogDlg = alertdialog.create(); 
alertdialogDlg.show(); 

public DialogInterface.OnClickListener okListener = new  
DialogInterface.OnClickListener() { 

     public void onClick(DialogInterface dialog, int which) { 
      //do something 
     } 
    };