2011-07-18 45 views
5

我已經構建了一個自定義對話框,並且頂部和底部都有黑線。它們只出現在Galaxy S2上。在其他一些設備上看起來沒問題。是否有我必須設置的屬性來擺脫它們?Galaxy S上的自定義對話框中的黑線2

enter image description here

這裏是我的代碼:

public class MyDialog extends Dialog { 

    private Context context; 
    private String title, message; 
    private TextView titleView, messageView; 
    private ImageView icon; 
    private int iconRes; 
    private boolean spin; 

    public MyDialog(Context context, int icon, boolean spin, String title, String message) { 
     ... 
    } 

    private void init() { 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     this.setContentView(R.layout.my_dialog); 
     ... 
    } 

} 

佈局:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:minWidth="300dip" style="@style/basic" android:orientation="vertical"> 
    <LinearLayout android:layout_width="fill_parent" 
     android:layout_height="wrap_content" android:background="@drawable/titlebar_bg" 
     android:orientation="horizontal" android:gravity="center_vertical" 
     android:paddingBottom="5sp"> 
     <ImageView android:src="@drawable/info" android:id="@+id/dialogIcon" 
      android:layout_height="32sp" android:layout_width="32sp" /> 
     <TextView android:id="@+id/titleText" android:text="Title" 
      android:textSize="20sp" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:textColor="@color/darkgrey" 
      android:layout_marginLeft="5sp" /> 
    </LinearLayout> 
    <TextView android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:paddingTop="5sp" 
     android:textColor="#000" android:id="@+id/messageText" android:text="Message" /> 
</LinearLayout> 
+0

我的SGS II上的所有自定義對話框也都一樣。 –

回答

3

後相當長的一段時間來調查這個問題,我發現,三星似乎已經失敗panel_background.9.png的資源...

解決方法得到的這個黑線坐的是設置自己的背景是這樣的對話框:

<style name="CustomDialog" parent="@android:style/Theme.Dialog"> 
    <item name="android:windowBackground">@drawable/panel_background</item> 
</style> 

然後panel_background.9.png從Android源複製或創建自己的一個!然後確保你的對話框在你的style.xml中使用新的主題createt實例化...

只有一個問題,現在你的對話框會鬆開「三星對話框樣式」。這意味着角落可能會與您應用中的其他默認對話框不同...