gpt4 book ai didi

android - 如何在 Android DrawerLayout 的左上角添加 3 行图标

转载 作者:行者123 更新时间:2023-12-05 07:45:22 25 4
gpt4 key购买 nike

我正在编写新应用程序,我想将我的 drawerLayout 图标外观更改为典型的 3 条水平线。如果我单击它,Icon 应该将他的外观更改为箭头。现在我一直有一个箭头图标。

How should It looks like when drawer is closed

How should It looks like when drawer is opened

package pl.nieruchalski.scrumfamily;

import android.app.Activity;
import android.content.res.Configuration;
import android.os.PersistableBundle;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;

public class MainActivity extends Activity {

private ActionBarDrawerToggle drawerToggle;
private DrawerLayout drawerLayout;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
drawerLayout = (DrawerLayout) findViewById(R.id.drawerLayout);
drawerToggle = new ActionBarDrawerToggle(this, drawerLayout, R.string.openDrawer, R.string.closeDrawer);
drawerLayout.addDrawerListener(drawerToggle);
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
}

@Override
public void onPostCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
super.onPostCreate(savedInstanceState, persistentState);
drawerToggle.syncState();
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
drawerToggle.onConfigurationChanged(newConfig);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(drawerToggle.onOptionsItemSelected(item))
return true;
return super.onOptionsItemSelected(item);
}
}

最佳答案

您重写了错误的 onPostCreate() 方法,因此 drawerToggle.syncState(); 永远不会被调用,并且切换永远不会将自己的图标放在 ActionBar.

您需要仅使用Bundle 参数覆盖onPostCreate() 方法;没有 PersistableBundle 参数。

@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
drawerToggle.syncState();
}

关于android - 如何在 Android DrawerLayout 的左上角添加 3 行图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41749028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com