Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了为什么Tab主机不在android中显示图标?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这是设置tabhost的代码,但是有两个问题

>如果文本太长,文本将转到下一行,我可以减少
尺寸并强制它到单线?
>所有图标都不显示,即使我确定图像src是正确的

public class MainActivity extends FragmentActivity {

    @Override
    protected void onCreate(Bundle savedInstanceStatE) {
        super.onCreate(savedInstanceStatE);
        setContentView(R.layout.activity_main);

        FragmentTabHost tabHost = (FragmentTabHost)findViewById(android.R.id.tabhost);

        tabHost.setup(this,getSupportFragmentManager(),R.id.realtabcontent);
        tabHost.addTab(tabHost.newTabSpec("restaurant").seTinDicator("Restaurant",getresources().getDrawable(R.drawable.food)),PlaceList.class,null);
        tabHost.addTab(tabHost.newTabSpec("attraction").seTinDicator("Attraction",getresources().getDrawable(R.drawable.view)),null);
        tabHost.addTab(tabHost.newTabSpec("map").seTinDicator("Map",getresources().getDrawable(R.drawable.map)),Map.class,null);
        tabHost.addTab(tabHost.newTabSpec("plAnner").seTinDicator("PlAnner",getresources().getDrawable(R.drawable.plan)),PlAnner.class,null);
    }
 }

解决方法

调用TabSpec.seTinDicator时,你在 will only be visible if the label is null or empty.中传递的Drawable只要确保TextView被限制为单行就可以了,你可以遍历TabWidget.getTabCount,然后调用TabWidget.getChildTabViewAt和View.findViewById来获取用于的TextView设置标题.之后,只需调用TextView.setSingleLine.

final TabWidget tabWidget = tabHost.getTabWidget();
    for (int i = 0; i < tabWidget.getTabCount(); i++) {
        final View tab = tabWidget.getChildTabViewAt(i);
        final TextView title = (TextView) tab.findViewById(android.R.id.titlE);
        title.setSingleLine();
    }

或者,您可以通过为Widget.TabWidget创建样式来扩展自己的选项卡布局.

<style name="Your.TabWidget" parent="@android:style/Widget.TabWidget">
    <item name="android:tabLayout">@layout/your_tab_layout</item>
</style>

在您的父主题中为android创建一个新项:tabWidgetStyle来应用它.

大佬总结

以上是大佬教程为你收集整理的为什么Tab主机不在android中显示图标?全部内容,希望文章能够帮你解决为什么Tab主机不在android中显示图标?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。