Android Java:如何防止我的对话框在关闭时短暂显示 MainActivity appname?

Android Java: How do I prevent my Dialog box from showing MainActivity appname briefly when the Dialog closes?

我是 Android 开发的新手,我已经创建了我的第一个 "real" 应用程序,它执行以下操作:

问题是,当 ViewDialog 被关闭时,我偶尔会看到一条消息,显示在 AndroidManifest 文件中设置的活动 android:label

Video of what is happening

我不确定为什么会这样,但我 假设 它在 ViewDialog 关闭时显示 MainActivity 布局的某些项目拥有 dialog_layout 布局文件。

我摆弄了很多不同的东西并更改了 code/layouts 等等,但我一直没能找到我的错误。

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

布局和清单文件在这里:

您发布的代码不足以弄清楚为什么会发生这种情况,但是有一个通用的解决方案是看不到 Activity 标题(即在清单的标签字段中设置)。

在您的 styles.xml 中声明一个新主题,例如

<style name="AppTheme.NoActionBar" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="android:windowContentOverlay">@null</item>
</style>

然后像这样

让它成为你activity的主题
 <activity
           ...
           android:name="boha.notify.MainActivity"
           android:theme="@style/AppTheme.NoActionBar">
           ...
</activity>

虽然我不是 100% 确定(因为这种行为可以在您 activity 的实际代码中改变)我认为这可能会有所帮助。

希望对您有所帮助。

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

<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>
notify.setOnDissmissListener({CancelTimer()
    activity.finishAndRemoveTask()
    dialog.dismiss()})

原来如果我改成:

public class MainActivity extends AppCompatActivity {

public class MainActivity extends Activity {

问题消失了。我不知道为什么,但我会接受的。