我總是創建自定義對話框沒有所有權,使其居中(水平和垂直)使用styles.xml
或requestWindowFeature(Window.FEATURE_NO_TITLE)
android:windowNoTitle
但我的一些對話都沒有居中水平,例如此對話框:無標題的Android對話框不居中水平
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:padding="20dp"
android:gravity="center"
android:background="@drawable/dialog_bg" >
<include
android:layout_width="wrap_content"
android:layout_height="wrap_content"
layout="@layout/loading_s"/>
<TextView
android:id="@+id/message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:gravity="center_vertical"
android:text="@string/loading"
android:textColor="@color/dialog_text"
android:textSize="@dimen/dialog_title_text_size" />
</LinearLayout>
這是如何創建對話框:
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
View v = LayoutInflater.from(getActivity()).inflate(R.layout.dlg_progress, null);
Dialog dlg = new Dialog(getActivity(), R.style.My_Dialog_Style); //My_Dialog_Style contains android:windowNoTitle = true
dlg.setContentView(v);
dlg.setCanceledOnTouchOutside(false);
dlg.setCancelable(true);
return dlg;
}
這裏是h嗷嗷它出現在屏幕
如果我刪除android:windowNoTitle
正確地將這個對話框顯示所以使用對話框沒有標題的時候只出現問題。
有誰知道爲什麼會發生這種情況,以及如何使對話框始終集中在屏幕上?
如何創建對話框?這是一個'DialogFragment'嗎? – brillenheini
是的,這是一個DialogFragment,請參閱更新以瞭解如何創建對話框。 – Wayne