如何更改选项卡图像比例

发布于 2024-10-01 00:47:32 字数 1321 浏览 5 评论 0原文

我有一个选项卡布局,其中可绘制资源作为选项卡图像。 在横向模式下一切都很好。但在纵向模式下,图像与选项卡之间没有边距。如何更改图像比例或如何为图像设置一些边距?我不想使用固定大小,不认为这是正确的方法。

这是我的布局

<TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                />
        <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:padding="5dp"
                >
            <ListView
                    android:id="@+id/list"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    />
        </FrameLayout>


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/logo" android:state_selected="true"  />
    <item android:drawable="@drawable/logo_disabled" />
</selector>

这是选项卡创建

    Drawable d = res.getDrawable(R.drawable.logos); 
    spec = tabHost.newTabSpec(1).setIndicator("", res.getDrawable(R.drawable.logos)).setContent(intent);
    tabHost.addTab(spec);

I have a tab layout with drawable resources as tab images.
In landscape mode everything fine. But in portrait mode images doesn't have some margin from tabs. How I can change images scale or how to set some margin to image? I don't want use fixed size, don't think that it is right way.

Here is my layout

<TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                />
        <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:padding="5dp"
                >
            <ListView
                    android:id="@+id/list"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    />
        </FrameLayout>


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/logo" android:state_selected="true"  />
    <item android:drawable="@drawable/logo_disabled" />
</selector>

Here is tab creation

    Drawable d = res.getDrawable(R.drawable.logos); 
    spec = tabHost.newTabSpec(1).setIndicator("", res.getDrawable(R.drawable.logos)).setContent(intent);
    tabHost.addTab(spec);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

回忆躺在深渊里 2024-10-08 00:47:32

自己解决了我的问题

    //set icons padding
    for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++){
        tabHost.getTabWidget().getChildAt(i).setPadding(10,10,10,10);
    }

Solved my problem myself

    //set icons padding
    for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++){
        tabHost.getTabWidget().getChildAt(i).setPadding(10,10,10,10);
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文