You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Visual Studio Xamarin.Android中设置ActionBar默认选中指定标签页

默认选中ActionBar指定标签页(Xamarin.Android)

很简单,你只需要在所有标签页都添加到ActionBar之后,调用ActionBar的SelectTab方法,就能指定默认选中的标签,完全不需要改变标签的添加顺序。

有两种常用的实现方式,选哪种都可以:


方法1:通过标签索引选中

每个标签页在添加时会按顺序获得一个索引(从0开始),你可以直接通过索引定位到目标标签:

  • "Animals"是第1个标签,索引为0
  • "Motorcycle"是第2个标签,索引为1

在你所有ActionBar.AddTab(tab);代码之后,添加一行:

// 默认选中"Motorcycle"(索引1)
ActionBar.SelectTab(ActionBar.GetTabAt(1));

// 如果要默认选中"Animals",就用索引0:
// ActionBar.SelectTab(ActionBar.GetTabAt(0));

方法2:保存目标Tab对象直接选中

如果你不想记索引,可以在创建目标标签时把它保存为变量,最后直接选中:

修改你的代码如下:

SetContentView(Resource.Layout.Main);

// 创建并添加Animals标签
ActionBar.Tab tab = ActionBar.NewTab();
tab.SetText("Animals");
tab.SetIcon(Resource.Drawable.tab1_icon);
tab.TabSelected += (sender, args) => { /* 你的逻辑 */ };
ActionBar.AddTab(tab);

// 保存Motorcycle标签的引用
ActionBar.Tab motorcycleTab = ActionBar.NewTab();
motorcycleTab.SetText("Motorcycle"); // 原代码这里漏了引号,记得补上
motorcycleTab.SetIcon(Resource.Drawable.tab2_icon);
motorcycleTab.TabSelected += (sender, args) => { /* 你的逻辑 */ };
ActionBar.AddTab(motorcycleTab);

// 创建并添加Cars标签
tab = ActionBar.NewTab();
tab.SetText("Cars"); // 同样补上引号
tab.SetIcon(Resource.Drawable.tab2_icon);
tab.TabSelected += (sender, args) => { /* 你的逻辑 */ };
ActionBar.AddTab(tab);

// 默认选中Motorcycle标签
ActionBar.SelectTab(motorcycleTab);

// 如果要选Animals,就把上面的换成:
// ActionBar.SelectTab(tab); // 这里的tab是第一个创建的Animals标签对象

注意:一定要确保在所有标签都添加完成后再调用SelectTab,否则可能找不到目标标签或者选中无效。

另外,你原代码里的SetText(Motorcycle)和SetText(Cars)应该是字符串常量,记得加上双引号,不然会编译报错哦。

内容的提问来源于stack exchange,提问作者neneo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:39:47