【问题标题】:Activity in tab host goes blank选项卡主机中的活动变为空白
【发布时间】:2011-10-30 12:27:47
【问题描述】:

我有带有三个选项卡的选项卡主机。在第一个选项卡中,我正在画布上执行一些位图操作(有点重)。每当我移动到第二个或第三个选项卡时,选项卡中的活动变为空白。我在选项卡 1 中有一个编辑文本,所以当软键盘弹出时,其余选项卡工作正常。我认为这是因为弹出软键盘时窗口会重新调整大小。我想如果我能够重新调整大小或刷新选项卡 1,我将能够在其余选项卡中正确查看内容。有什么办法可以重新调整大小当前窗口或刷新窗口。我尝试使用 LayoutParams 设置宽度和高度,但实际上并没有调整大小。当我更改方向时,选项卡开始正常工作,可能是因为整个选项卡主机正在重新创建。 有没有人遇到过类似的问题?

任何帮助将不胜感激。

【问题讨论】:

    标签: android android-tabhost tabactivity


    【解决方案1】:

    您可以使用FLAG_ACTIVITY_CLEAR_TOP 选项在选项卡选择处自动刷新选项卡内容。因此,当您创建选项卡时,只需将其添加到您的选项卡规范中即可。

    tabHost.addTab(tabHost.newTabSpec("tab1")
                          .setIndicator("myTabName")
                          .setContent(new Intent(this, MyTabContent.class)
                          .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));
    

    【讨论】:

      【解决方案2】:

      如果您在选项卡内的活动中使用画布,请确保在重新创建视图时您的尺寸始终正确 - 首先记录值并观察宽度和高度在何时何地获得新值。最常见的错误点是 onDraw 和 onMeasure

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多