-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-##main.xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-##MainAcivity
-
-
-
- /**项目名:IndicatorTabBar
- * 包名: com.my.indicatortabbar
- * 文件名:MainAcivity.java
- * 版本信息: 2.1.0
- * 日期: 2015/5/27/9:13.
- * Copyright (c) 2015帮你公司-版权所有
- */
- package com.my.indicatortabbar;
-
- import android.app.Activity;
- import android.os.Bundle;
- 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.view.ViewPager;
-
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
-
- /**
- * 名称:com.my.indicatortabbar.MainAcivity
- * 描述:
- *
- *
- *
- *
- * @author 鲍建明
- * @version 2.1.0
- * @date 2015/5/27/9:13
- */
- public class MainAcivity extends FragmentActivity {
-
-
- private ViewPager mViewPager;
- private IndicatorTabBar mIndicatorTabBar;
- private List tableNames = Arrays.asList("上海", "北京", "广州", "深圳", "沈阳", "南京", "石家庄", "丽江");
- private List fragmentList;
-
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- mViewPager = (ViewPager) findViewById(R.id.viewpager);
- mIndicatorTabBar = (IndicatorTabBar) findViewById(R.id.indicatorTabBar);
-
- intFragmentList();
-
- mViewPager.setAdapter( new MyViewPager(getSupportFragmentManager(), fragmentList) );
- mIndicatorTabBar.initView(tableNames, mViewPager, 5);
- }
-
- /**
- * 初始化Fragment
- */
- private void intFragmentList(){
- fragmentList = new ArrayList<>();
- for ( int i = 0; i < tableNames.size(); i++ ){
- FragmentFactory fragment = FragmentFactory.newInstance(tableNames.get(i));
- fragmentList.add(fragment);
- }
- }
-
-
-
- /**
- * 名称:com.my.indicatortabbar.MainAcivity。MyViewPager
- * 描述:
- *
- *
- *
- *
- * @author 鲍建明
- * @version 2.1.0
- * @date 2015/5/27/9:13
- */
- class MyViewPager extends FragmentPagerAdapter{
-
- private List fragmentList;
-
- public MyViewPager(FragmentManager fm, List fragmentList) {
- super(fm);
- this.fragmentList = fragmentList;
- }
-
- @Override
- public Fragment getItem(int i) {
- return fragmentList.get(i);
- }
-
- @Override
- public int getCount() {
- return fragmentList.size();
- }
- }
- }
-
-
-
-##Demo
-![image]()
-![image]()
-![image]()
-
diff --git "a/IndicatorTabBar(ViewPager+\346\214\207\347\244\272\345\231\250\357\274\214\344\273\277\347\275\221\346\230\223\346\226\260\351\227\273)/app/app.iml" "b/IndicatorTabBar(ViewPager+\346\214\207\347\244\272\345\231\250\357\274\214\344\273\277\347\275\221\346\230\223\346\226\260\351\227\273)/app/app.iml"
deleted file mode 100644
index c6c55c4e2c045f0aaceb50e0168ea3e306418330..0000000000000000000000000000000000000000
--- "a/IndicatorTabBar(ViewPager+\346\214\207\347\244\272\345\231\250\357\274\214\344\273\277\347\275\221\346\230\223\346\226\260\351\227\273)/app/app.iml"
+++ /dev/null
@@ -1,91 +0,0 @@
-
-项目名:IndicatorTabBar
- *包名: com.my.indicatortabbar
- *文件名:FragmentTest.java
- *版本信息: 2.1.0
- *日期: 2015/5/27/13:15.
- * Copyright (c) 2015帮你公司-版权所有 - */ -package com.my.indicatortabbar; - -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.view.Gravity; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.LinearLayout; -import android.widget.TextView; - -/** - *名称:com.my.indicatortabbar.FragmentTest
- *描述:
- *- * - *- * - * @author 鲍建明 - * @version 2.1.0 - * @date 2015/5/27/13:15 - */ -public class FragmentFactory extends Fragment { - - private String mText; - private final String mText_key = "FragmentFactory"; - - public static FragmentFactory newInstance(String mText){ - FragmentFactory mFragmentTest = new FragmentFactory(); - mFragmentTest.mText = mText; - return mFragmentTest; - } - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - if( savedInstanceState != null && savedInstanceState.containsKey(mText_key) ){ - mText = savedInstanceState.getString(mText_key); - } - } - - @Override - public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - TextView text = new TextView(getActivity()); - text.setGravity(Gravity.CENTER); - text.setText(mText); - text.setTextSize(10 * getResources().getDisplayMetrics().density); - text.setTextColor(Color.GRAY); - text.setPadding(20, 20, 20, 20); - - LinearLayout layout = new LinearLayout(getActivity()); - layout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, - LinearLayout.LayoutParams.MATCH_PARENT)); - layout.setGravity(Gravity.CENTER); - layout.addView(text); - return layout; - } - - @Override - public void onSaveInstanceState(Bundle outState) { - super.onSaveInstanceState(outState); - outState.putString(mText_key, mText); - } - - - - -} diff --git "a/IndicatorTabBar(ViewPager+\346\214\207\347\244\272\345\231\250\357\274\214\344\273\277\347\275\221\346\230\223\346\226\260\351\227\273)/app/src/main/java/com/my/indicatortabbar/IndicatorTabBar.java" "b/IndicatorTabBar(ViewPager+\346\214\207\347\244\272\345\231\250\357\274\214\344\273\277\347\275\221\346\230\223\346\226\260\351\227\273)/app/src/main/java/com/my/indicatortabbar/IndicatorTabBar.java" deleted file mode 100644 index 0dd3520d831f20bc39fd96b27f2b17ef721a71ad..0000000000000000000000000000000000000000 --- "a/IndicatorTabBar(ViewPager+\346\214\207\347\244\272\345\231\250\357\274\214\344\273\277\347\275\221\346\230\223\346\226\260\351\227\273)/app/src/main/java/com/my/indicatortabbar/IndicatorTabBar.java" +++ /dev/null @@ -1,388 +0,0 @@ -package com.my.indicatortabbar; - -import java.util.ArrayList; -import java.util.List; - -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.graphics.Rect; -import android.support.v4.view.ViewPager; -import android.support.v4.view.ViewPager.OnPageChangeListener; -import android.util.AttributeSet; -import android.util.DisplayMetrics; -import android.util.TypedValue; -import android.view.Gravity; -import android.view.MotionEvent; -import android.view.WindowManager; -import android.widget.FrameLayout; -import android.widget.HorizontalScrollView; -import android.widget.LinearLayout; -import android.widget.TextView; - -/** - * Indicator TabBar - * - * @author Andy - * @since 2015-05-12 - * - * Thanks for https://github.com/keithellis/MaterialWidget - */ -public class IndicatorTabBar extends HorizontalScrollView { - - private int mMaxColumn; - private static final int Default_Column = 3; - - private float mTranslationX; //指示条偏移量 - private int mTextSize; //文字的大小 - private int mTextColor; //默认没有选中的文字颜色 - private int mTextSelectedColor; //文字选中后的颜色 - - private int mUnderLineColor; //文字选中后的指示跳颜色 - private int mUnderLineHeight; //指示条高度 - - private TabContainer mTabContainer; - private TabView mCurrentTab; //当前的列 - private List
项目名:IndicatorTabBar
- *包名: com.my.indicatortabbar
- *文件名:MainAcivity.java
- *版本信息: 2.1.0
- *日期: 2015/5/27/9:13.
- * Copyright (c) 2015帮你公司-版权所有 - */ -package com.my.indicatortabbar; - -import android.app.Activity; -import android.os.Bundle; -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.view.ViewPager; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -/** - *名称:com.my.indicatortabbar.MainAcivity
- *描述:
- *- * - *- * - * @author 鲍建明 - * @version 2.1.0 - * @date 2015/5/27/9:13 - */ -public class MainAcivity extends FragmentActivity { - - - private ViewPager mViewPager; - private IndicatorTabBar mIndicatorTabBar; - private List
名称:com.my.indicatortabbar.MainAcivity。MyViewPager
- *描述:
- *- * - *- * - * @author 鲍建明 - * @version 2.1.0 - * @date 2015/5/27/9:13 - */ - class MyViewPager extends FragmentPagerAdapter{ - - private List