【android 指示器tablatyout】仰天大笑出门去,我辈岂是蓬蒿人。这篇文章主要讲述android 指示器tablatyout相关的知识,希望能为你提供帮助。
< android.support.design.widget.TabLayout/>
android 材料设计中新出的控件
package com.weavey.loadinglayout;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.content.ContextCompat;
import android.support.v4.view.ViewCompat;
import android.support.v4.view.ViewPager;
import com.weavey.fragment.TabContentFragment1;
import java.util.ArrayList;
/**
* Android TabLayout一个滑动标签页
*/
public class TabLayoutActivity extends FragmentActivity {
private TabLayout mTabTl;
private ViewPager mContentVp;
private ArrayList< String> tabIndicators;
private ArrayList< Fragment> tabFragments;
private ContentPagerAdapter contentAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_tablyout);
setView();
setListener();
//设置内容
setContent();
//设置TAB 选项卡
setTab();
}
private void setTab() {
mTabTl.setTabMode(TabLayout.MODE_FIXED);
mTabTl.setTabTextColors(ContextCompat.getColor(this, android.R.color.holo_red_dark), ContextCompat.getColor(this, android.R.color.white));
//设置线条的颜色
//mTabTl.setSelectedTabIndicatorColor(ContextCompat.getColor(this, android.R.color.holo_green_dark));
//设置 tab之间的间距 px
ViewCompat.setElevation(mTabTl, 10);
//关联相对应的viewPager
mTabTl.setupWithViewPager(mContentVp);
}
private void setContent() {
tabIndicators = new ArrayList< > ();
for (int i = 0; i < 3; i++) {
tabIndicators.add("Tab " + i);
}
tabFragments = new ArrayList< > ();
for (String s : tabIndicators) {
tabFragments.add(TabContentFragment1.newInstance(s));
}
contentAdapter = new ContentPagerAdapter(getSupportFragmentManager());
mContentVp.setAdapter(contentAdapter);
}
private void setView() {
mTabTl = (TabLayout) findViewById(R.id.tl_tab);
mContentVp = (ViewPager) findViewById(R.id.vp_content);
}
private void setListener() {
}
class ContentPagerAdapter extends FragmentPagerAdapter {
public ContentPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return tabFragments.get(position);
}
@Override
public int getCount() {
return tabIndicators.size();
}
//设置标签指示器的标题
@Override
public CharSequence getPageTitle(int position) {
return tabIndicators.get(position);
}
}
}
详见:http://www.jianshu.com/p/39a66373498c
更加详细http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0731/3247.html包括自定义封装tablayout
可以进行很多的设置
< style name="MyCustomTabLayout" parent="Widget.Design.TabLayout">
< item name="tabMaxWidth"> 80dp< /item> tablayout 最大的宽度
< item name="tabIndicatorColor"> ?attr/colorAccent< /item> 指示器的颜色
< item name="tabIndicatorHeight"> 12dp< /item> 指示器的高度
< item name="tabPaddingStart"> 12dp< /item> tab 左边距
< item name="tabPaddingEnd"> 12dp< /item> 右边距
< item name="tabBackground"> @android:color/holo_blue_bright< /item> tablayout 背景颜色
< item name="tabTextAppearance"> @style/MyCustomTabTextAppearance< /item> 设置字体样式
< item name="tabSelectedTextColor"> ?android:textColorPrimary< /item>
< /style>
< style name="MyCustomTabTextAppearance" parent="TextAppearance.Design.Tab">
< item name="android:textSize"> 14sp< /item> 设置指示器中字体的大小
< item name="android:textColor"> ?android:textColorSecondary< /item> 设置指示器中字体的颜色
< item name="textAllCaps"> true< /item> 是否强制将字体变成大写
< /style>
推荐阅读
- Android6.0权限组申请
- PHP Gmagick borderImage()函数用法示例
- OOP编程(Scala中的继承详细指南)
- Python MongoDB查询用法示例详细介绍
- Kruskal的最小生成树算法|贪婪算法2
- PHP中的超全局变量解析和用法示例
- JavaScript Math random()方法用法示例
- Perl变量用法完整指南和示例
- PHP date_create_from_format()函数用法示例解析