在启动时打开导航抽屉
Posted
技术标签:
【中文标题】在启动时打开导航抽屉【英文标题】:Open Navigation Drawer at startup 【发布时间】:2014-06-12 14:17:08 【问题描述】:我对 android 编程相当陌生,并开发了一个实现了 Navigation Drawer 的应用程序。根据 Google 指南,我希望 NavDraw 开始打开,但无法执行此操作。
这是我的 onCreate(我想这是我应该实现这个功能的地方,对吧?)
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActionBar().getThemedContext(), android.R.layout.simple_list_item_1, menuEntries);
final DrawerLayout drawer = (DrawerLayout)findViewById(R.id.drawer_layout);
final ListView navList = (ListView) findViewById(R.id.drawer);
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
drawerToggle = new ActionBarDrawerToggle(
this,
drawer,
R.drawable.ic_drawer,
R.string.drawer_open,
R.string.drawer_close
)
(...)
【问题讨论】:
【参考方案1】:使用drawer.openDrawer(Gravity.LEFT);
【讨论】:
如果针对国际用户,请改用 GravityCompat.START。 你应该用if (savedInstanceState == null)
包裹起来,这样抽屉在配置/方向改变时不会打开【参考方案2】:
你可以使用
drawer.openDrawer(Gravity.LEFT);
或
drawer.openDrawer(Gravity.RIGHT`);
【讨论】:
以上是关于在启动时打开导航抽屉的主要内容,如果未能解决你的问题,请参考以下文章