Android TabHost 相当于 setIndex

Android TabHost equivalent to setIndex

我想更改 TabHost 的当前激活标签。

SOF 上有一些答案,但它们不起作用,因为它们都使用 setCurrentTab。

我有一个带标记的地图,如果我点击其中一个,就会调用此函数:

public void onMarkerClick(Marker marker) {

    findViewById(R.id.createNewMarker).setVisibility(View.GONE);
    findViewById(R.id.tab_host).setVisibility(View.VISIBLE);
}

可见性的更改完美无缺,但是当我尝试添加时 findViewById(R.id.tab_host).setCurrentTab(1) 该方法似乎不存在。

正确的方法是什么?

findViewById(R.id.tab_host)returns一个Viewclass。 TabHostView 的子 class。要在存储为 View 但实际上是 TabHost 的对象上使用 TabHost 方法,您必须 将其 转换为 TabHost:

((TabHost)findViewById(R.id.tab_host)).setCurrentTab(1)