首页 文章

如何在活动中的运行时主题设置中避免 Headers 栏?

提问于
浏览
0

我想将我的应用程序移植到android支持库v7版本23.1 .

为此,我按照多个指南中的指示从Theme.AppCompat.NoActionBar扩展了我的主题 .

<style name="MyTheme" parent=" Theme.AppCompat.NoActionBar ">

我在运行时使用动态主题设置onCreate()方法 .

public class MyActivity extends AppCompatActivity
{
    @Override
    public void onCreate(Bundle icicle) {
        Log.d(TAG, "onCreate() started.");
        super.onCreate(icicle);
        setTheme(R.style.MyTheme);
        setContentView(R.layout.activity_main);
        Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar_default);
        setSupportActionBar(toolbar);
    }
}

问题是总是有旧的android TitleBar可见 . 我的意思是 Headers 栏,而不是行动吧 . 只有在运行时设置主题时才会出现此问题 . 如果我在清单中设置它没有 Headers 栏 . 我想这是支持库中的一些错误,但问题是,如何修复它?

1 回答

  • 1

    正如Dalmas在他的评论中所建议的那样,必须调用WindowsWindowFeature() . 但是我必须在onCreate()方法中调用BEFORE super.onCreate() .

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

相关问题