android-viewpager – android中心在tablayout中对齐选定的选项卡

android-viewpager – android中心在tablayout中对齐选定的选项卡,第1张

概述我正在使用 android支持设计tablayout.这是我的代码: <android.support.design.widget.TabLayout android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content"" 我正在使用 android支持设计tablayout.这是我的代码:
<androID.support.design.Widget.TabLayout        androID:ID="@+ID/tabs"        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content""        app:tabGravity="center"        app:tabMode="scrollable"        />    <androID.support.v4.vIEw.VIEwPager        androID:ID="@+ID/vIEw_pager"        androID:layout_wIDth="match_parent"        androID:layout_height="match_parent"        />

我的问题是标签总是左对齐.但是,我想将选定选项卡居中(即使在开头,第一个(选定的)选项卡也应居中).有没有办法做到这一点?谢谢.

解决方法 我看了一下TabLayout,tabContentStart只为其第一个孩子设置了填充 – > SlIDingTabStrip,所以我在两边手动设置:
public class CenteringTabLayout extends TabLayout {    public CenteringTabLayout(Context context) {        super(context);    }    public CenteringTabLayout(Context context,AttributeSet attrs) {        super(context,attrs);    }    public CenteringTabLayout(Context context,AttributeSet attrs,int defStyleAttr) {        super(context,attrs,defStyleAttr);    }    @OverrIDe    protected voID onLayout(boolean changed,int l,int t,int r,int b) {        super.onLayout(changed,l,t,r,b);        VIEw firstTab = ((VIEwGroup)getChildAt(0)).getChildAt(0);        VIEw lastTab = ((VIEwGroup)getChildAt(0)).getChildAt(((VIEwGroup)getChildAt(0)).getChildCount()-1);        VIEwCompat.setpaddingrelative(getChildAt(0),(getWIDth()/2) - (firstTab.getWIDth()/2),(getWIDth()/2) - (lastTab.getWIDth()/2),0);    }}

TabLayout的第一个0索引子项是SlIDingTabStrip.

总结

以上是内存溢出为你收集整理的android-viewpager – android中心在tablayout中对齐选定的选项卡全部内容,希望文章能够帮你解决android-viewpager – android中心在tablayout中对齐选定的选项卡所遇到的程序开发问题。

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

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1137159.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存