Android 教你打造炫酷的ViewPagerIndicator 不仅仅是高仿MIUI

首先我们在布局文件中声明下,一个是ViewPagerIndicator ,一个是我们的ViewPager.

2、MainActivity


package com.example.demo_zhy_mms_miui;

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

import android.os.Bundle;

import android.support.v4.app.Fragment;

import android.support.v4.app.FragmentActivity;

import android.support.v4.app.FragmentPagerAdapter;

import android.support.v4.view.ViewPager;

import android.view.Window;

public class MainActivity extends FragmentActivity

{

private List mTabContents = new ArrayList();

private FragmentPagerAdapter mAdapter;

private ViewPager mViewPager;

// private List mDatas = Arrays.asList(“短信1”, “短信2”, “短信3”, “短信4”,

// “短信5”, “短信6”, “短信7”, “短信8”, “短信9”);

private List mDatas = Arrays.asList(“短信”, “收藏”, “推荐”);

private ViewPagerIndicator mIndicator;

@Override

protected void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.vp_indicator);

initView();

initDatas();

//设置Tab上的标题

mIndicator.setTabItemTitles(mDatas);

mViewPager.setAdapter(mAdapter);

//设置关联的ViewPager

mIndicator.setViewPager(mViewPager,0);

}

private void initDatas()

{

for (String data : mDatas)

{

VpSimpleFragment fragment = VpSimpleFragment.newInstance(data);

mTabContents.add(fragment);

}

mAdapter = new FragmentPagerAdapter(getSupportFragmentManager())

{

@Override

public int getCount()

{

return mTabContents.size();

}

@Override

public Fragment getItem(int position)

{

return mTabContents.get(position);

}

};

}

private void initView()

{

mViewPager = (ViewPager) findViewById(R.id.id_vp);

mIndicator = (ViewPagerIndicator) findViewById(R.id.id_indicator);

}

}

关于我们的ViewPagerIndicator的使用,就两行:

//设置Tab上的标题

mIndicator.setTabItemTitles(mDatas);

//设置关联的ViewPager

mIndicator.setViewPager(mViewPager,0);

其他代码都是初始化ViewPager神马的可见,我们的控件写好之后使用起来极其简单

好了,大家注意下,布局文件里面有个设置可见Tab个数的属性:zhy:item_count=“3”  ;

比如:当item_count=3,而给的TabTitle的List的size也是3的话,就是效果图1的效果~~~

当item_count=4,而给的TabTitle的List的size大于4的话,就是效果图2的效果~~~

其实,我们也支持直接在布局中书写我们的Tab,你完全可以不使用mIndicator.setTabItemTitles(mDatas);取而代之,你可以在布局中定义几个TextView,固定好文本,样式什么的其实别的控件我们也是支持的~

贴一下Fragment代码~

package com.example.demo_zhy_mms_miui;

import android.os.

  • 30
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值