寻找适用于 Android、HTC Sense、Samsung 等皮肤的通用 TabHost 样式
Android TabHost 的默认样式适用于普通 Android 系统。然而,在 HTC Sense 上,他们在深色背景上使用深色文本,这是不可读的。
让 TabHost 在所有不同风格的 Android 皮肤中显示可见文本的最简单方法是什么?如果可能的话,我宁愿不必制作完全定制的外观和感觉。
我的 targetSDK 是 10,我的 minSDK 是 7。
The default style for the Android TabHost works fine for straight Android systems. However, on HTC Sense, they use dark text on a dark background, which is unreadable.
What's the easiest way to have a TabHost that has visible text across all the various flavors of android skins? I would prefer to not have to make a completely custom look-and-feel if possible.
My targetSDK is 10 and my minSDK is 7.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我将建议您完全独立于 TabWidget 并创建自己的导航,您可以根据需要自定义导航,而不必为僵硬的 TabWidget 烦恼。我并不是要扔掉很棒的 TabHost,因为使用 TabHost 进行自定义导航很容易:
首先将 TabWidget 设置为消失:
然后创建您自己的导航来代替它。您还可以创建一个菜单(使用硬件菜单按钮)或类似的内容:
您现在必须在代码中做什么:
顺便说一句,不需要整个指示器的东西。^^ 在您的 ActivityGroups 中,您必须设置适当的 Activity 等. 你知道这些东西。
您可以使用任何内容进行导航,并且仍然可以利用 TabHost 的优势。只是不再为那个 TabWidget 烦恼了。 ;)
I'll give you the advise to get completely independent from the TabWidget and create your own Navigation, which you can customize however you want and don't bother with the stiff TabWidget. I don't mean to throw away the awesome TabHost, because it's easy to use the TabHost with a custom navigation:
First set your TabWidget as gone:
And then create you own navigation in place of it. You could also create a menu (with the hardware menu button) or something like this:
What you have to do in code now:
The whole indicator stuff is not needed btw.^^ In your ActivityGroups you have to set the appropriate Activities, etc. You know the stuff.
You can use anything for your navigation and can still use the advantages of a TabHost. Just don't bother with that TabWidget anymore. ;)
经过一些研究,我认为最好的选择是使用 ActionBar 的选项卡式界面,因为它看起来更容易设计样式。 ActionBarSherlock 为从 Android 1.6 开始的设备提供 ActionBar 兼容层。 在这里您可以查看示例,了解使用该库可以获得什么。
After some research I think the best option would be to use ActionBar's tabbed interface since it looks much more easier to style. The ActionBarSherlock provides compatibility layer for ActionBar for devices starting from Android 1.6. Here you can look at examples on what you can get using the library.