对话框的自定义布局跨不同版本?

时间:2013-02-01 00:49:35

标签: android dialog

我有一个带有自定义布局的Dialog(非常简单)。我使用以下代码进行设置:

public static Dialog createGPSDialog(final Activity activity, boolean isLocationEnabled) {
    final Dialog dialog = new Dialog(activity, R.style.Theme_Sherlock_Light_Dialog);

    LinearLayout contentView = (LinearLayout) activity.getLayoutInflater().inflate(R.layout.dialog_twobutton, null);

    dialog.setContentView(contentView);
    return dialog;
}

我省略了一些代码,但它没有关系。无论如何,这就是它在姜饼中的样子:

gingerbread

这就是它在软糖上的表现(也可能是ics):

jellybean

即使在设置ContentView之后,对话框的标题区也会保留在JB上。有解决方法吗?

2 个答案:

答案 0 :(得分:1)

如果您想完全自定义并摆脱标题栏,请尝试将此行添加到您的代码中:

dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);

答案 1 :(得分:0)

关键是为对话框定义主题。 Dialog的构造函数采用主题资源ID。只需使用android的android.R.theme.xxx。

使用AlertDialog.Builder时,您可以使用contextthemewrapper定义新主题。 http://developer.android.com/reference/android/view/ContextThemeWrapper.html