編輯:關於Android編程
眾所周知Android的Tab控件不是很好用,因此Github上的PagerSlidingTabStrip項目被廣為使用,該項目地址為:
其示例圖如下:
由於其demo代碼較長,難以理解,因此我總結了一個最簡的使用方法。
第一,在ADT中導入PagerSlidingTabStrip中的library項目,若使用Android Studio則直接導入即可,若使用ADT則需參考我的上一篇文章進行導入:
http://blog.csdn.net/logicteamleader/article/details/45202863
並將library項目改名為PagerSlidingTabStrip-lib
第二,創建自己的項目,其中引用PagerSlidingTabStrip-lib項目。在自己的項目中創建幾個Fragment,並繼承FragmentPagerAdapter類實現一個MyPagerAdapter類,代碼如下(略去了幾個Fragment的layout和代碼):
package wxbtabexam.apkkids.com; import java.util.ArrayList; 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 android.util.TypedValue; import com.astuetz.PagerSlidingTabStrip; import com.example.wxbtabexam.R; public class HomeActivity extends FragmentActivity { private ViewPager pager; private MyPagerAdapter pagerAdapter; private PagerSlidingTabStrip tabs; private int currentColor =0xFF5161BC; @Override protected void onCreate(Bundle arg0) { super.onCreate(arg0); setContentView(R.layout.home_layout); tabs = (PagerSlidingTabStrip) this.findViewById(R.id.tabs); pager = (ViewPager) this.findViewById(R.id.pager); ArrayListfragmentlist = new ArrayList (); //注意,這三個Fragment需要自己實現 ButtonFragment buttonFragment = new ButtonFragment(); TextFragment textFragment = new TextFragment(); MyListFragment mylistFragment = new MyListFragment(); fragmentlist.add(buttonFragment); fragmentlist.add(textFragment); fragmentlist.add(mylistFragment); pagerAdapter = new MyPagerAdapter(getSupportFragmentManager(), fragmentlist); pager.setAdapter(pagerAdapter); final int pageMargin = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 4, getResources() .getDisplayMetrics()); pager.setPageMargin(pageMargin); tabs.setViewPager(pager); changeColor(currentColor); } private void changeColor(int newColor) { tabs.setIndicatorColor(newColor); currentColor = newColor; } //MyPagerAdapter要和上面實現的三個Fragment對應起來 class MyPagerAdapter extends FragmentPagerAdapter{ private final String[] TITLES = { Buttons, TextViews, List }; private ArrayList fragmentlist; public MyPagerAdapter(FragmentManager fm,ArrayList list) { super(fm); fragmentlist = list; } @Override public CharSequence getPageTitle(int position) { return TITLES[position]; } @Override public int getCount() { return fragmentlist.size(); } public Fragment getItem(int position) { return fragmentlist.get(position); } } }
本示例演示在Android中實現圖片左右滑動效果。關於滑動效果,在Android中用得比較多,本示例實現的滑動效果是使用ViewFlipper來實現的,當然也可以使用其它
安卓v7支持包下的ListView替代品————RecyclerViewRecyclerView這個控件也出來很久了,相信
ATCID主要用來處理PC端傳輸過來的AT命令,從AT命令實際處理的地方來說,主要分為3類: 1. 需要Modem來處理的AT命令; 2. 需要在nativ
前言 前幾天有在微博上推薦過一個博客,看他文章時發現了這個屬性。有些屬性不常用,但需要的時候非常有用,於是做了個例子,正好項目用到,與大家分享一下。