Android requestWindowFeature(窗口。功能\u无\u标题);给出了例外情况

Android requestWindowFeature(窗口。功能\u无\u标题);给出了例外情况,android,android-preferences,Android,Android Preferences,将setRequestedOrientation()移动到add/clearFlags()代码之后 编辑:如下所述,我没有看到它使用了preferenceActivity。 为了便于理解,这是您使用super.onCreate()调用的PreferenceActivity.onCreate(): 如果super.onCreate()中已经请求了功能\u NO\u标题,为什么要请求它? 有时候,如果你深入研究Android源代码,它会非常有用。在这种情况下,超级用户正在设置内容视图,在设置内容视图

将setRequestedOrientation()移动到add/clearFlags()代码之后

编辑:如下所述,我没有看到它使用了preferenceActivity。 为了便于理解,这是您使用super.onCreate()调用的PreferenceActivity.onCreate():

如果super.onCreate()中已经请求了功能\u NO\u标题,为什么要请求它?
有时候,如果你深入研究Android源代码,它会非常有用。

在这种情况下,超级用户正在设置内容视图,在设置内容视图之前,你必须使用requestWindowFeature。因此,在调用super之前使用requestWindowFeature

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

    requestWindowFeature(Window.FEATURE_NO_TITLE);

    setContentView(com.android.internal.R.layout.preference_list_content);

    mPreferenceManager = onCreatePreferenceManager();
    getListView().setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);
}

哦,是的,我刚刚看到你延长了优惠活动。难以阅读未格式化的文本。扩展PreferenceActivity无法做到这一点。一旦调用super.onCreate(),将设置视图组,因此不允许更改窗口的参数。您可以尝试在稍后的状态(在窗口标志设置之后)调用super.onCreate(),但我怀疑您能否在该创建状态下访问该窗口的成员。我编辑了我的答案,以便您可以查看super.onCreate()上发生的情况
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    requestWindowFeature(Window.FEATURE_NO_TITLE);

    setContentView(com.android.internal.R.layout.preference_list_content);

    mPreferenceManager = onCreatePreferenceManager();
    getListView().setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);
}
public class LandNavSettings extends PreferenceActivity implements
            SharedPreferences.OnSharedPreferenceChangeListener {

    @Override
    protected void onCreate(Bundle icicle) {
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            super.onCreate(icicle);     
    }
}