`
龙哥IT
  • 浏览: 252768 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

TabLayout样式规定

 
阅读更多

  //ViewPager指示器

    api 'com.github.hackware1993:MagicIndicator:1.5.0'

 

 

  <net.lucode.hackware.magicindicator.MagicIndicator
        android:id="@+id/magic_indicator" android:layout_marginTop="@dimen/my1dp"
        android:layout_width="match_parent"
        android:layout_height="45dp"/>

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

 

 

   initMagicIndicator();
        pager.setOffscreenPageLimit(list.size());
        pager.setAdapter(new MycommentAdapter(getSupportFragmentManager(), list));
        pager.setCurrentItem(0);

 

    private void initMagicIndicator() {
        magicIndicator.setBackgroundColor(Color.WHITE);
        CommonNavigator commonNavigator = new CommonNavigator(this);
        commonNavigator.setAdjustMode(true);//是固定

        commonNavigator.setAdapter(new CommonNavigatorAdapter() {
            @Override
            public int getCount() {
                return list.size();
            }

            @Override
            public IPagerTitleView getTitleView(Context context, final int index) {
//                SimplePagerTitleView simplePagerTitleView = new ScaleTransitionPagerTitleView(context);// 文字变化样式
                SimplePagerTitleView simplePagerTitleView = new ColorTransitionPagerTitleView(context);
                simplePagerTitleView.setText(list.get(index));
                simplePagerTitleView.setTextSize(14);
                simplePagerTitleView.setNormalColor(Color.parseColor("#616161"));
                simplePagerTitleView.setSelectedColor(Color.parseColor("#27C79b"));
                simplePagerTitleView.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        pager.setCurrentItem(index);
                    }
                });
                return simplePagerTitleView;
            }

            @Override
            public IPagerIndicator getIndicator(Context context) {
                LinePagerIndicator indicator = new LinePagerIndicator(context);
                indicator.setMode(LinePagerIndicator.MODE_EXACTLY);
                indicator.setLineHeight(UIUtil.dip2px(context, 3));
                indicator.setLineWidth(UIUtil.dip2px(context, 20));
                indicator.setRoundRadius(UIUtil.dip2px(context, 3));
                indicator.setStartInterpolator(new AccelerateInterpolator());
                indicator.setEndInterpolator(new DecelerateInterpolator(2.0f));
                indicator.setColors(Color.parseColor("#27C79b"));
                return indicator;
            }
        });

        magicIndicator.setNavigator(commonNavigator);
        ViewPagerHelper.bind(magicIndicator, pager);
    }

 

    public class MycommentAdapter extends FragmentPagerAdapter {
        private ArrayList<String> titles;

        public MycommentAdapter(FragmentManager fm, ArrayList<String> list) {
            super(fm);
            this.titles = list;
        }


        @Override
        public CharSequence getPageTitle(int position) {
            return titles.get(position);
        }

        @Override
        public int getCount() {
            return titles.size();
        }

        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            return super.instantiateItem(container, position);
        }

        @Override
        public Fragment getItem(int position) {
            Bundle b = new Bundle();
            b.putString("id", position + "");
            return MyCommentFragment.getInstance(b);
        }
    }

 

 

 

 

 

  • 大小: 55 KB
分享到:
评论

相关推荐

    Android 原始方法实现Tablayout样式

    本篇文章将深入探讨如何使用Android原生API实现TabLayout样式,帮助开发者掌握这一核心功能。 首先,我们需要了解TabLayout的基本用法。TabLayout是Android Design Support Library的一部分,它提供了Material ...

    tablayout的自定义tab和自定义指示器

    在Android开发中,`TabLayout`是Google提供的一个用于创建底部导航栏或者顶部标签页的组件,常与`ViewPager`配合使用,实现页面间的切换。本文将深入探讨如何自定义`TabLayout`的tab和指示器,以实现更加个性化的...

    Android Tablayout 的Indicator 长度和样式的修改

    在Android开发中,TabLayout是谷歌Material Design设计规范的一部分,用于构建底部导航栏或顶部标签页,它提供了方便的方式来切换不同的视图。本教程将详细讲解如何修改Android TabLayout的Indicator,即选中标签时...

    TabLayout修改下划线

    在很多设计中,`TabLayout`的下划线样式需要根据需求进行定制,以达到与整体界面风格一致的效果。本篇文章将深入探讨如何修改`TabLayout`的下划线,以满足个性化的需求。 首先,我们要了解`TabLayout`的基本使用。...

    可自定义下划线的TabLayout

    首先,TabLayout的默认样式可能无法满足所有设计需求,特别是对于下划线的定制化。我们可以创建一个自定义的TabLayout,通过继承原生的TabLayout并重写相关方法来实现个性化的下划线效果。下面将详细介绍这个过程。 ...

    tablayout+viewpager 的完美展示 多角度 多功能 各样式

    在Android开发中,`TabLayout`和`ViewPager`是两个非常重要的组件,它们常常结合使用以实现具有平滑切换和可定制样式的标签页视图。`TabLayout`由谷歌的Material Design库提供,用于创建符合Material Design规范的...

    TabLayout的多重用法

    2. 修改默认样式:可以通过继承`TabLayout`并重写`onDraw()`或`onMeasure()`方法来自定义Tab的大小、颜色等属性。 3. 使用主题:在`styles.xml`中定义一个主题,通过`app:tabTheme`属性应用到TabLayout上,可以改变...

    TabLayout+Fragment 使用示例

    6. **自定义TabLayout的样式**:你可以通过更改`TabLayout`的属性来自定义其样式,例如字体大小、颜色、图标等。此外,还可以使用`TabLayout.addTab(Tab)`方法手动添加标签。 7. **动态添加和移除Tab**:如果需要在...

    TabLayout设置下划线长度

    2. **覆盖`TabLayout`的默认样式**: 在自定义的`TabLayout`中,通过`setCustomTabView()`方法,我们可以替换默认的`TabView`,从而控制下划线的显示。在这个`TabView`中,我们可以将自定义的指示器设置为`Tab`的背景...

    Android Tablayout 自定义Tab布局的使用案例

    在这个布局文件中,我们使用了一个 TextView 用于显示 Tab 的文本,并设置了背景图片和文本样式。 三、设置 Tab 的 padding 在 Tablayout 中,我们可以使用 `app:tabPaddingStart` 和 `app:tabPaddingEnd` 属性来...

    Android Studio —— TabLayout

    Google 推出的 Material Design 指南为 TabLayout 提供了更多的设计建议和组件样式,比如在 Material Components for Android 中,TabLayout 可以拥有更丰富的动画效果和交互反馈。 10. **优化性能** 当 ...

    Tablayout + ViewPage 完整案例

    它提供了多种样式和自定义选项,可以方便地调整其外观和行为。 `ViewPager`是Android SDK中的一个视图容器,它可以展示多个页面并允许用户左右滑动来切换页面。`ViewPager`通常用于实现水平滚动的效果,如在一个...

    TabLayout学习Demo

    5. 自定义样式:TabLayout允许自定义样式,包括文字颜色、背景色、选中状态等。这可以通过在主题中定义自定义属性或者在代码中动态设置来实现。 6. 监听Tab切换事件:如果需要监听Tab切换事件,可以通过`TabLayout....

    TabLayout控件

    1. **自定义布局**:如何创建自定义的标签视图,以实现特定的设计需求,例如添加动画效果或者独特的布局样式。 2. **扩展TabLayout**:如何通过继承`TabLayout`类并重写相关方法来自定义其行为,比如改变选中标签的...

    TabLayout.zip

    提供的`demo`代码示例可能包含了完整的实现过程,包括设置TabLayout的样式、添加Tab、关联ViewPager、以及自定义Tab的内容。通过对这个示例的分析和运行,开发者可以更直观地理解TabLayout的工作原理和用法。 8. *...

    tablayout实现fregment侧滑

    在Android开发中,TabLayout是谷歌提供的一个用于创建标签页的UI组件,它与ViewPager结合使用,能够方便地实现页面间的切换。而“tablayout实现fragment侧滑”是指利用TabLayout和Fragment配合,使得用户可以通过在...

    TabLayout标题右上角加数字标记

    在Android开发中,`TabLayout`是谷歌支持库提供的一种组件,用于展示多个标签页,通常与`ViewPager`配合使用,实现滑动切换不同页面的效果。`TabLayout`的标题右上角添加数字标记是一种常见的需求,这可以用来指示...

    Android顶部导航之TabLayout和ViewPager的组合

    如果你想改变标签的样式,可以通过自定义`TabLayout.TabView`或者设置`TabLayout.setCustomTabView(int layoutResId, int textResId)`来实现。 在实际开发中,你可能还需要处理一些特殊情况,例如监听页面切换事件...

    Android Tablayout 的使用

    可以通过创建自定义的TabLayout风格,或者在Java代码中设置Tab的样式,例如更改字体颜色、背景色等。 **三、TabLayout与其他组件的组合** 1. **与Toolbar结合** TabLayout通常与Toolbar一起使用,创建一个带有...

Global site tag (gtag.js) - Google Analytics