当前位置: 首页 > 知识库问答 >
问题:

主题不适用于Android上的DialogFragment

高德水
2023-03-14

我正在将旧的对话框切换到DialogFragment,但主题和样式似乎不起作用。

[...]
import android.support.v4.app.DialogFragment;
[...]

public class AlertDialogFragment extends DialogFragment {

  public static AlertDialogFragment newInstance(int id) {

    AlertDialogFragment f = new AlertDialogFragment();
    Bundle args = new Bundle();
    args.putInt("id", id);
    f.setArguments(args);

 }

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    int style = DialogFragment.STYLE_NORMAL, theme = 0;
    theme = android.R.style.Theme_Holo_Dialog_NoActionBar;
    setStyle(style, theme);     
  }

  @Override
  public Dialog onCreateDialog(Bundle savedInstanceState) {

    mId = getArguments().getInt("id");
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity())
        .setTitle(mTitle)
        .setMessage(mMessage)
        .setPositiveButton(getString(R.string.btn_ok), new DialogInterface.OnClickListener() {      
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dismiss();                  
            }
        });
        return builder.create();
    }

共有1个答案

钱展
2023-03-14

您不应该在支持库中使用AlertDialog.Builder(Context,int)构造函数,因为它只在API11之后才可用。

要为对话框设置主题,请使用如下所示的ContextThemeWrapper:

ContextThemeWrapper context = new ContextThemeWrapper(getActivity(), android.R.style.Theme_Holo_Dialog_NoActionBar);
AlertDialog.Builder builder = new AlertDialog.Builder(context);
 类似资料:
  • 问题内容: 我有这个代码: 当我滚动我的回收站视图时,出现此错误: 如何处理此错误并获得第一个可见项目的位置? 问题答案: 我用此代码对其进行了测试,并且对我来说效果很好 我使用了回收视图参数。

  • DownloadManager在Android 8.0上不工作。我不知道为什么。有人能帮我吗? 这就是我尝试过的:

  • 我想在我的移动应用程序中使用谷歌oauth授权。我之前已经在测试控制台应用中实现了此功能。但是,在我在 Xamarin Android中重新定位我的代码后,出现了一些问题。法典: 这是脏代码,但在控制台应用中执行得很好。当我尝试在 Xamarin 中启动方法时,我捕获异常: 无法启动带有“”的浏览器https://accounts.google.com/o/oauth2/v2/auth?acces

  • 我已经在中声明了材料主题。

  • 我在一个网站上工作,遇到了一个问题,点击我的“删除”链接会出现一个错误页面。在localhost上运行良好-无法理解为什么在Heroku站点上会有所不同。 有人知道这是怎么回事吗? 我的“图片”控制器: 我的图片/新视图: 以下是我尝试删除图片时的heroku日志(从导航到新图片页面开始(同一视图中的新建和编辑功能): 2015-11-15T16:13:49.189857 00:00 heroku