0

我使用 astuetz 的 PagerSlidingTabStrip,并在选择器中使用图标。我有两个片段。标签条在 xml 中定义:

<com.astuetz.PagerSlidingTabStrip
    android:id="@+id/ptsOverview"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    psts:pstsShouldExpand="true"
    psts:pstsIndicatorHeight="5dp"
    psts:pstsDividerColor="#FFFFFF"
    psts:pstsIndicatorColor="@color/pts_indicator"/>

问题是我找不到正确的图标大小。如果尺寸太大,图标显示为中心裁剪。如果图标太小,它会显示得很丑。

知道图标的正确大小是多少吗?谢谢

4

1 回答 1

0

好的,我想我至少找到了一种“修改”标签图标的方法。

从这里 https://github.com/astuetz/PagerSlidingTabStrip/blob/master/library/src/com/astuetz/PagerSlidingTabStrip.java

在 239 号线

private void addIconTab(final int position, int resId) {

        ImageButton tab = new ImageButton(getContext());
        tab.setImageResource(resId);

        addTab(position, tab);

    }

你可以看到他使用 ImageButton 来滑动视图,所以从这里: ImageView 的默认 ScaleType 是什么? 它说

默认 ScaleType 值为 FIT_CENTER,但对于 Button 为“fitXY”

所以图标现在被拉伸以适应 X 和 Y。如果您将此行添加到您想要的任何内容中:

tab.setScaleType(ImageView.ScaleType.FIT_START);

或者

tab.setScaleType(ImageView.ScaleType.CENTER_INSIDE);

你可以取得更好的结果..最后找到适合你的解决方案..

当然,您必须在 android studio 的 .gradle 配置文件中包含 PagerSlidingTabStrip 项目作为依赖项。

于 2015-12-10T14:17:43.943 回答