Android ProgressDialog设置消息为空

Android ProgressDialog设置消息为空,android,progressdialog,Android,Progressdialog,这让我发疯,我在任何地方都找不到答案。一个非常简单的微调器对话框,但是setMessage不起作用,它是空的 public class MainActivity extends FragmentActivity { ProgressDialog loadingProgress; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanc

这让我发疯,我在任何地方都找不到答案。一个非常简单的微调器对话框,但是setMessage不起作用,它是空的

public class MainActivity extends FragmentActivity {

    ProgressDialog loadingProgress;

         protected void onCreate(Bundle savedInstanceState) {
               super.onCreate(savedInstanceState);

            loadingProgress = new ProgressDialog(this);
            loadingProgress.setIndeterminate(true);
            loadingProgress.setMessage("Loading");
            loadingProgress.setProgressStyle(ProgressDialog.STYLE_SPINNER);
        }
在AsyncTask中,我只显示ProgressDialog:

protected void onPreExecute() {
    super.onPreExecute();
    loadingProgress.show();
}
结果是:


空白,没什么。。。不管是模拟器还是设备。。。你知道为什么吗?非常感谢您的帮助。

这是我在应用程序中使用的代码。它工作得很好——一个带有消息的旋转器。你所展示的内容与本文的主要区别在于:1)我使用的是DialogFragment;2) 我不认为这是一种风格。不确定这其中哪一个(如果有),但这段代码肯定对我有用

public void showProgressDialog(int stringResId, boolean isCancelable) {
    Bundle arguments = new Bundle();
    arguments.putString(EXTRA_MESSAGE, getString(stringResId));
    arguments.putBoolean(EXTRA_CANCELABLE, isCancelable);
    DialogFragment fragment = new ProgressDialogFragment();
    fragment.setArguments(arguments);
    showDialog(fragment);
}

public static class ProgressDialogFragment extends DialogFragment {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        Bundle arguments = getArguments();
        String message = arguments.getString(EXTRA_MESSAGE, null);
        boolean isCancelable = arguments.getBoolean(EXTRA_CANCELABLE, true);

        ProgressDialog dialog = new ProgressDialog(getActivity());
        dialog.setIndeterminate(true);
        if (message != null) {
            dialog.setMessage(message);
        }
        dialog.setCancelable(isCancelable);
        dialog.setCanceledOnTouchOutside(isCancelable);
        return dialog;
    }
}

我已经测试了您的代码,看到“加载”字符串显示得非常好。 看到你的截图有文本视图的空间,我想这将是文本颜色或主题的问题

若setMessage起作用,您可以在Eclipse中设备选项卡的“Dump View Hierarchy for UI Automator”工具中进行检测,如下面的屏幕截图所示


是的,是主题。奇怪的是,ProgressDialog和ProgressDialog.STYLE\u水平显示的文本很好,但是ProgressDialog.STYLE\u微调器从主题中选择颜色。想想看。谢谢你的参考:)所以你需要做的是在创建进度日志时声明你的主题。比如:loadingProgress=newprogressdialog(这是ProgressDialog.THEME\u DEVICE\u DEFAULT\u DARK);