我是Android开发的新手,并且创建了第一个执行以下操作的“真实”应用程序:

  • 启动MainActivity
  • MainActivity处理Extra Data,然后显示扩展了ViewDialogDialogViewDialog具有showDialog()方法,该方法执行以下操作来设置和显示Dialog:
    protected void showDialog(final Activity activity)
    {
        dialog = new Dialog(activity);
        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        dialog.setCancelable(false);
        dialog.setContentView(dialog_layout);
    
        // Set background color of the dialog
        ConstraintLayout currentLayout = (ConstraintLayout) dialog.findViewById(R.id.Dialog);
    
        // setup of views etc ...
    
        // Finally dislay `Dialog`
        dialog.show();
    
        // Method called to start a `DialogTimer` which extends `CountDownTimer`
    }
    
  • MainActivity显示ViewDialog,如下所示:
     public class MainActivity extends AppCompatActivity {
         private static Context appContext;
         private static ViewDialog notify;
    
         protected void onCreate(Bundle savedInstanceState) {
    
             // methods and processing etc...
    
             // time to display dialog
             notify = new ViewDialog(mParameters, mThemeHandler );
    
             // ******************** Show dialog box *******************
             notify.showDialog(activity: this);   // showDialog just calls `Dialog.show()`
             notify.ApplyTheme();
         }
    
  • 当计时器到期或用户按下按钮时,ViewDialog关闭,应用程序使用以下代码完成:
        mButton1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            CancelTimer();
            activity.finishAndRemoveTask();
            dialog.dismiss();
    

  • 问题是,当ViewDialog被关闭时,我偶尔会看到看起来像一条消息的消息,其中显示了在AndroidManifest文件中设置的 Activity android:label

    Video of what is happening

    我不确定为什么会发生这种情况,但是我认为当MainActivity关闭时,它正在显示ViewDialog布局的某些项目,该项目使用了它自己的dialog_layout布局文件。

    我摆弄了很多不同的东西,更改了代码/布局等,但我一直找不到我的错误。

    有哪些指针和提示可以帮助我解决此问题?
    如果需要,我很乐意提供更多详细信息。

    布局和 list 文件在这里:
  • list https://pastebin.com/GL70FxGh
  • activity_main.xml https://pastebin.com/qDVa0LrN
  • dialog_layout.xml https://pastebin.com/RC4e6W9T
  • 最佳答案

    您可以通过将AndroidManifest.xml中元素上的android:theme属性设置为@android:style/Theme.NoTitleBar来实现此目的,如下所示:

    <activity android:name=".Activity"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.NoTitleBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    

    09-05 12:47