TabHost 中的 Webview = 以黑屏启动

2024-05-13

我正在尝试在有 4 个选项卡的 tabhost 中使用 webview - 所有选项卡都链接到同一个 webview。

这很好,除了一个问题: 启动时,网络视图是黑色的。 单击选项卡 2、3 或 4 使其“活跃起来”。

我的快速解决方法是使用 setCurrentTab(1) 然后返回 0,但这看起来很难看,所以我想我最好寻求解决方案,因为我在网上找不到任何东西。

如何解决这个问题?下面是我的 XML:

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1">
        <android.webkit.WebView android:layout_width="fill_parent" android:id="@+id/webview" android:layout_height="fill_parent" android:scrollbars="none"/>
    </FrameLayout>
    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0"
        />
</LinearLayout>
</TabHost>

Update:将 webview 放在框架布局之外会导致应用程序在启动时崩溃,并出现以下错误: java.lang.RuntimeException:无法创建选项卡内容,因为找不到 ID 为 2131099648 的视图

当我在 onCreate 方法中初始化我的 tabhost 时,会发生这种情况:

    mTabHost = getTabHost();
    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Tab1", getResources().getDrawable(R.drawable.ligenu)).setContent(R.id.webview));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Tab2", getResources().getDrawable(R.drawable.mad)).setContent(R.id.webview));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("Tab3", getResources().getDrawable(R.drawable.godpris)).setContent(R.id.webview));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test4").setIndicator("Tab4", getResources().getDrawable(R.drawable.om)).setContent(R.id.webview)); 

突破!

我在另一篇我过去没有偶然发现的帖子中找到了我自己问题的答案:为什么我的 TabHost 的 FrameLayout 的唯一子级加载了visibility = View.GONE? https://stackoverflow.com/questions/5109081/why-is-my-tabhosts-framelayouts-only-child-loaded-with-visibility-view-gone

简单设置:

tabHost.getCurrentView().setVisibility(View.VISIBLE);

这样就解决了问题!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TabHost 中的 Webview = 以黑屏启动 的相关文章

  • 使用 Eclipse 创建新的 android 项目后,Eclipse 中的 SRC 文件夹为空(未创建 MainActivity 类)

    使用 Eclipse 创建新的 android 项目后 Eclipse 中的 SRC 文件夹为空 未创建 MainActivity 类 我使用 Eclipse 创建了一个新的 android 项目 但我在项目资源管理器中看到 SRC 文件夹
  • 检查片段是否存在并重用它

    每次用户单击列表视图中的项目时 我都会使用以下代码创建一个片段 但通过这种方式 片段是在每次用户点击时创建的 我想要的是重用旧片段 如果存在 并仅重新加载其内容 不创建新片段 MagazineViewFragment fragment ne
  • 如何在导航抽屉上显示谷歌加个人资料图片?

    下面的代码来自github 用于在android应用程序中通过gmail登录 我做了一些修改以使用volley显示个人资料图片 它工作正常 我只想在导航抽屉中显示这些内容 个人资料图片 姓名和电子邮件 ID 我使用了 android stu
  • MissingDimensionStrategy 无处不在 - 有没有更好的方法?

    我有一个图书馆项目 让我们称之为lib1有定制的flavorDimensions指定的 更准确地说有buld尺寸与实际口味full and production 该库被另一个库项目使用 lib2 没有自定义flavorDimensions指
  • 如何在Android中创建类似架子的视图?

    如何在android中创建一个类似书架的视图 在任意行中显示多本书 此外 它应该具有像 Moon reader 应用程序那样的水平和垂直功能 我可以编写一个水平移动的架子视图 但它不能完全工作 我使用 xml 文件来查看包含图像 文本和按钮
  • 在 Android Studio 中调试服务的正确方法?

    在 Android Studio 中调试服务有正确的方法吗 或者 Android Studio 无法做到这一点 当我尝试调试时 它只会断开套接字 与目标虚拟机断开连接 地址 localhost 8600 传输 socket 希望你能在这里帮
  • Android view.animate() 第一次执行后工作方式不同且错误

    我已经实现了一个横幅 每当用户失去连接时就会弹出 重新连接后 另一个横幅会显示几秒钟然后消失 布局是一个RelativeLayout 其中一个灰色的TextView 表示警告 一个绿色的TextView 表示重新连接消息 如果我只是更改 V
  • Android studio 3.0不生成签名的apk

    将 android studio 更新到版本 3 0 Windows 后 我无法生成签名的 APK 构建完成后 我收到消息 单击 查找 会将我带到 APP 文件夹 但找不到 APK 改变了什么 自Android Studio 3 0更新后
  • 如果使用键盘,如何捕获 TimePicker 中的时间变化?

    我有一个小部件 它是一个 TimePicker 用于检索数据库字段中保存的时间 问题是 当用户更改小部件中的时间值时 这不会保存在数据库中 所以我遇到了setOnTimeChangedListener如果您只在小部件中使用加号和减号 那么该
  • 底部导航视图 - 渐变图标色调

    I have changed icon tint in BottomNavigationView using selector and gradient color as tint when icon is pressed but inst
  • onPictureTaken 之后旋转 JPEG 的字节数组

    有没有办法旋转字节数组而不将其解码为位图 目前在 jpeg PictureCallback 中我只是将字节数组直接写入文件 但图片是旋转的 我想旋转它们而不解码为位图 希望这能节省我的记忆 BitmapFactory Options o n
  • Byte[] 和 java.lang.OutOfMemoryError 按位读/写文件

    我正在努力擦除 Android 中的一些可用空间 这是我的代码 private void creatingFileDelete int size int passMode File lastFile new File Environment
  • 如何触发 Google Play 商店自动更新机制?

    简而言之 我希望我的应用程序在我向商店发布新的 APK 后立即更新 我找不到任何有关自动更新实际发生时间的信息 而且似乎变化很大 有一次是在几个小时后发生的 另一次是 12 小时没有更新 似乎是在设备重启时发生的 但是还有其他情况吗 我可以
  • Android 的@hide 注解到底有什么作用?

    Android中很多内部API都被标记出来了 hide What exactly这是吗 另一个答案 https stackoverflow com questions 17035271 what does hide mean in the
  • 覆盖乔达一周的第一天?

    是否有可能覆盖乔达弱的第一天sunday 因为 Joda 使用Monday作为一周的第一天 如果有办法的话 谁能解释一下 我在 SOF 中提到了以下主题 乔达时间 一周的第一天 https stackoverflow com questio
  • Keytool 不要求别名密码

    我正在尝试生成一个密钥库文件来签署我的 React Native Android 应用程序并将其发布到 Play 商店 我正在尝试按照本文档中的描述进行操作 https facebook github io react native doc
  • Android 中 Bitmap 和 Drawable 有什么区别?

    我用谷歌搜索 但找不到任何文章来描述 Android 中 Bitmap 和 Drawable 之间的区别 位图是位图图像的表示 类似于 java awt Image Drawable 是 可以绘制的东西 的抽象 它可能是一个位图 包装为Bi
  • java.lang.IllegalStateException:FragmentManager 已被销毁

    活动中onResume我称之为 volley request 的方法 它获取项目列表 然后将它们加载到此活动内的 ListFragment 中 当我第一次进入活动时 一切正常 但当我重新进入活动时 ListFragment 为空 并且控制台
  • 使用 Ant 构建 Android 库项目

    我在使用 ant 构建 Android 库项目时遇到问题 当我尝试跑步时ant release 它说Target release does not exist in the project MyProject 然后我假设库可能无法通过发布
  • 片段已添加 IllegalStateException

    我在容器 Activity 上使用此方法来显示 BFrag public void showBFrag Start a new FragmentTransaction FragmentTransaction fragmentTransact

随机推荐