2017-03-08 62 views
0

我从清单应用该主题:Android的对话主题,使的setContentView应用程序崩溃

<activity 
     android:name=".ui.rate.MyActivity" 
     android:theme="@android:style/Theme.Dialog"> 
    </activity> 

有了这个就MyActivity的的setContentView()的应用程序崩溃。如果我删除它没有崩溃,但我需要这个主题

在活动的onCreate()我这样做:

requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.activity_rate); 
    getWindow().setBackgroundDrawableResource(android.R.color.transparent); 

即使删除了第一和第三线的应用A ncrash相同办法。这真的是导致崩溃的对话框主题

如何设置它以便Android接受它?

+0

请参阅此链接http://stackoverflow.com/a/29798616/3946958 –

+0

我不能将它重构为对话框,它需要保留为一个活动。 –

+0

没有日志应用程序只是崩溃没有错误/警告 –

回答

1

您可以使用Theme.AppCompat.Dialog作为您的活动的主题,以避免 兼容性问题。
该活动将作为对话框呈现。

<activity 
    android:name=".MainActivity" 
    android:theme="@style/Theme.AppCompat.Dialog"> 
</activity> 

至于标题,你可以使用setTitle("Hola!");来改变它。
如果你想去掉标题,只要致电:

supportRequestWindowFeature(Window.FEATURE_NO_TITLE); 

android:theme="@style/Theme.AppCompat.Dialog"
和:

requestWindowFeature(Window.FEATURE_NO_TITLE); 

android:theme="@android:style/Theme.Dialog"

+0

已经有一段时间了,但是如果我没有记错的话,AppCompat是解决方案o / –