Android DialogFragment标题未显示

时间:2015-09-04 19:10:13

标签: android android-dialogfragment

创建自定义DialogFragment时,我使用以下内容设置标题:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    View v = inflater.inflate(R.layout.fragment_dialog_add, container, false);      

    // Setting title here
    getDialog().setTitle("Add New");

    return v;
}

上面的代码在23岁以上的API级别上运行正常。对于API 23,标题根本没有显示。

知道为什么吗?以及如何在API 23上显示标题?

3 个答案:

答案 0 :(得分:57)

通过将以下内容添加到styles.xml中来解决:

<item name="android:dialogTheme">@style/CustomDialog</item>

<style name="CustomDialog" parent="@style/Theme.AppCompat.Light.Dialog">
    <item name="android:windowNoTitle">false</item>
</style>

答案 1 :(得分:43)

在你的风格中:

<style name="CustomDialog" parent="@style/Theme.AppCompat.Light.Dialog">
    <item name="android:windowNoTitle">false</item>
</style>

如果您的对话框是片段:

MyFragment myFragment = new MyFragment();
myFragment.setStyle(DialogFragment.STYLE_NORMAL, R.style.CustomDialog);

答案 2 :(得分:0)

我使用.setMessage而不是.setTitle解决了。我知道外观不一样,但就我而言,我只需要给用户一个提示。