android活动不是全屏Theme.Dialog应用程序已停止

Posted

技术标签:

【中文标题】android活动不是全屏Theme.Dialog应用程序已停止【英文标题】:android activity not full screen Theme.Dialog app has stopped 【发布时间】:2016-04-06 01:03:43 【问题描述】:

我与ImageButton 进行了第二个活动。它显示得很好,周围有空白。我想让它不全屏。这里*** 回答说添加android:theme="@android:style/Theme.dialog"。所以现在我的manifest

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme" >
    <activity android:name=".MainActivity" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".Main2Activity"
        android:theme="@android:style/Theme.Dialog" >
    </activity>
</application>

但现在,当 startActivity 调用 Main2Activity 时,应用程序会崩溃。为什么?

【问题讨论】:

为什么不加logcat? 【参考方案1】:

我认为您可能已经为 Main2Activity 类扩展了 AppCompatActivity 类或其他一些类。尝试只为 Main2Activity 扩展 Activity 类

Public class Main2Activity extends Activity

【讨论】:

但 Theme.Dialog 与 Activity 类一起使用,因为 AppCompatActivity 需要您使用 AppCompat 主题 是的。刚才我确定了。对不起。 @Ameya Kulkarni,谢谢。也许您也知道如何摆脱对话框中的应用名称标签(我只想要 ImageButton)?我根据 Theme.Dialog 制作了自定义样式,我应该添加什么项目? @Ameya Kulkarni,下面回答了我的问题 您也可以通过在自定义样式中添加 true 来做到这一点【参考方案2】:

添加这个请求WindowFeature(Window.FEATURE_NO_TITLE);在加载 setcontent 之前

【讨论】:

【参考方案3】:

您可能已经为 Main2Activity 类扩展了 AppCompatActivity 类或其他一些类。如果是这样,改变 android:theme="@android:style/Theme.Dialog" android:theme="@style/Theme.AppCompat.Dialog"

然后它会完美运行。

【讨论】:

以上是关于android活动不是全屏Theme.Dialog应用程序已停止的主要内容,如果未能解决你的问题,请参考以下文章

对话框android中的datepickerdialog

Android 主题theme说明 摘记

打开具有对话框的活动时应用程序关闭在背景中(样式Theme.Dialog)

Android studio使用android:style/Theme.Dialog报错:You need to use a Theme.AppCompat theme (or descendant)

Android常用对话框大全自定义Dialog的三种方式(Theme,PopupWindow,Dialog)

Android常用对话框大全自定义Dialog的三种方式(Theme,PopupWindow,Dialog)