標籤:
首先要說的是,滑動介面,我們需要一個以上的view切換,實際上可以使用ArrayList<View> pageViews要儲存view資訊,然後切換
LayoutInflater inflater = getLayoutInflater();pageViews = new ArrayList<View>();pageViews.add(inflater.inflate(R.layout.item01, null));pageViews.add(inflater.inflate(R.layout.item02, null));pageViews.add(inflater.inflate(R.layout.item03, null));
然後定義每個item01,item02,item03的xml檔案
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" > <LinearLayout android:id="@+id/linearLayout1" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <ImageView android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/feature_guide_0" > </ImageView> </LinearLayout></LinearLayout>
我在上面寫的是一個比較簡單的imageview來做一個item,
這裡不得不說必須定義一個class GuidPageChangeListener 繼承 OnPageChangeListener的介面來實現view之間的切換
public void onPageSelected(int arg0) {// TODO Auto-generated method stubfor (int i = 0; i < imageViews.length; i++) {imageViews[arg0].setBackgroundResource(R.drawable.page_indicator_focused);if (arg0 != i) {imageViews[i].setBackgroundResource(R.drawable.page_indicator);}}}這裡還須要一個適配器PagerAdapter類。我們寫一個自己的類來繼承它
class GuidPageAdapter extends PagerAdapter
主要引用的方法例如以下
class GuidPageAdapter extends PagerAdapter {@Overridepublic int getCount() {// TODO Auto-generated method stubreturn pageViews.size();}@Overridepublic boolean isViewFromObject(View arg0, Object arg1) {// TODO Auto-generated method stubreturn arg0 == arg1;}@Overridepublic void destroyItem(View arg0, int arg1, Object arg2) {// TODO Auto-generated method stub((ViewPager) arg0).removeView(pageViews.get(arg1));}@Overridepublic Object instantiateItem(View arg0, int arg1) {// TODO Auto-generated method stub((ViewPager) arg0).addView(pageViews.get(arg1));return pageViews.get(arg1);}}
這樣就能夠實現一個簡單的view左右滑動的切換,這個切換時全螢幕的切換,關於半屏的滑動切換後面再續
轉載請註明出處
http://blog.csdn.net/pishum/article/details/38024331
著作權聲明:本文部落格原創文章,部落格,未經同意,不得轉載。
android關於實現滑動介面