gpt4 book ai didi

android - 如何在操作栏下拉导航中设置 Activity 项?

转载 作者:IT王子 更新时间:2023-10-28 23:59:07 26 4
gpt4 key购买 nike

我正在尝试通过重新启动有关方向更改的 Activity 来解决问题。

我有一个带有下拉列表导航的 ActionBar,并且在每次旋转后,该列表的第一个元素被激活。保留 fragment 内容并不难,但我不知道如何设置 Activity 列表项。

这里是ActionBar的定义:

getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
ArrayAdapter<CharSequence> list = ArrayAdapter
.createFromResource(this, R.array.action_list, android.R.layout.simple_dropdown_item_1line);
list.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
getActionBar().setListNavigationCallbacks(list, this);

这是我的解决方法:

@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
if (!application.isRotated) {
application.activePosition = itemPosition;
application.activeId = itemId;
getFragmentManager().beginTransaction()
.replace(android.R.id.content, MyFragment.newInstance(itemPosition))
.commit();
} else {
application.isRotated = false;
this.onNavigationItemSelected(application.activePosition, application.activeId);
}
return true;
}

@Override
protected void onStop() {
super.onStop();
application.isRotated = true;
}

我不确定这是不是最好的解决方案。

最佳答案

我刚刚找到了那个功能。是setSelectedNavigationItem(int position) .

Set the selected navigation item in list or tabbed navigation modes.

例子:

actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
actionBar.setListNavigationCallbacks(adapter, this);
actionBar.setSelectedNavigationItem(position);

关于android - 如何在操作栏下拉导航中设置 Activity 项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9039045/

26 4 0