gpt4 book ai didi

android - 从 TabHost 中的 Tab Widget 中删除 View 会导致布局保持不变? (安卓)

转载 作者:行者123 更新时间:2023-11-29 18:07:57 26 4
gpt4 key购买 nike

只是为了澄清。我有一个 TabHost,在那个 tabhost 里面有 5 个标签。我正在玩 tabhost 所以我试图关闭其中一个选项卡(即其中一个 subview )。问题是即使它有效,选项卡下方的布局保持不变,即如果我在要关闭的选项卡中有一个 textview,并且在主选项卡中有一个按钮,当我使用 textview 关闭选项卡时,选项卡确实消失了,但 TextView 仍然存在。这是我用来关闭标签的代码:

    int vPos = mHost.getCurrentTab();
TabWidget tWidget = mHost.getTabWidget();

if (vPos != 0) {
tWidget.setCurrentTab(0);
tWidget.removeView(mHost.getTabWidget().getChildAt(vPos));

}

所以基本上它会关闭选项卡,切换到另一个选项卡,但选项卡下方的布局保持完全相同。我知道人们希望我发布完整的代码,包括布局和诸如此类的东西,但这是一般的事情,它不考虑布局,只考虑选项卡(如果我弄错了,请随时指出)。

也许我应该在 View 上调用 invalidate() 但无论我使 subview 、选项卡小部件还是 tabhost 无效,这都不起作用。

最佳答案

不幸的是,由于缺少 removeTab 函数,这是 TabWidget 内部的一个问题。当您从 TabWidget 调用 removeView 时,removeView 是从没有选项卡概念的 ViewGroup 类调用的。因此,您实际上只是删除了实际的选项卡,而下面的索引和布局不受影响。

过度的解决方法是调用 removeAllViews 并重新添加所有 View 。

关于android - 从 TabHost 中的 Tab Widget 中删除 View 会导致布局保持不变? (安卓),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12392043/

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