关于ViewPager的简单使用

来源:互联网 发布:知返小说下载 编辑:程序博客网 时间:2024/05/17 03:54

activity_main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout    xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical">    <TextView        android:layout_width="match_parent"        android:layout_height="50dp"        android:background="@color/colorPrimaryDark"        android:gravity="center"        android:text="偶像"        android:textColor="@android:color/white"        android:textSize="25sp"/>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="30dp"        android:background="@color/colorAccent">        <TextView            android:id="@+id/text_view_1"            style="@style/textColor_while_textSize_15sp_gravity_center"            android:textColor="@color/colorPrimary"            android:layout_width="0dp"            android:layout_height="match_parent"            android:layout_weight="1"            android:text="刘青云"/>        <TextView            android:id="@+id/text_view_2"            style="@style/textColor_while_textSize_15sp_gravity_center"            android:layout_width="0dp"            android:layout_height="match_parent"            android:layout_weight="1"            android:text="马云"/>        <TextView            android:id="@+id/text_view_3"            style="@style/textColor_while_textSize_15sp_gravity_center"            android:layout_width="0dp"            android:layout_height="match_parent"            android:layout_weight="1"            android:text="大空翼"/>    </LinearLayout>    <android.support.v4.view.ViewPager        android:id="@+id/pic_view_pager"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_gravity="center"/></LinearLayout>
fragment_pic
<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"             android:layout_width="match_parent"             android:layout_height="match_parent">    <ImageView        android:id="@+id/pic_image_view"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_gravity="center"/></FrameLayout>
package com.boy.naughty.pager;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;/** * Created by Administrator on 2016/10/2. */public class PicFragment extends Fragment {    private int[] mResIds = {R.drawable.liu_qing_yun, R.drawable.ma_yun, R.drawable.yi};    private int mPicIndex;    public static PicFragment getInstance(int picIndex){        PicFragment picFragment=new PicFragment();        Bundle arguments=new Bundle();        arguments.putInt(null,picIndex);        picFragment.setArguments(arguments);        return picFragment;    }    @Override    public void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        mPicIndex = getArguments().getInt(null);    }    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {        View v = inflater.inflate(R.layout.fragment_pic, container, false);        ((ImageView) v.findViewById(R.id.pic_image_view)).setImageResource(mResIds[mPicIndex]);        return v;    }}



package com.boy.naughty.pager;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import java.util.List;/** * Created by Administrator on 2016/10/2. */public class PicFragmentPagerAdapter extends FragmentPagerAdapter {    private List<PicFragment> mPicFragmentList;    public PicFragmentPagerAdapter(FragmentManager fm, List<PicFragment> picFragmentList){        super(fm);        mPicFragmentList=picFragmentList;    }    @Override    public Fragment getItem(int position) {        return mPicFragmentList.get(position);    }    @Override    public int getCount() {        return mPicFragmentList.size();    }}
package com.boy.naughty.pager;import android.os.Build;import android.support.v4.app.FragmentActivity;import android.support.v4.content.ContextCompat;import android.support.v4.view.ViewPager;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.TextView;import java.util.ArrayList;public class MainActivity extends FragmentActivity {    private TextView mTextView1,mTextView2,mTextView3;    private ViewPager mPicViewPager;    private ArrayList<PicFragment> mPicFragmentArrayList = new ArrayList<>();    private static final String TAG = "MainActivity";    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        if(Build.VERSION.SDK_INT>=21)            getWindow().setStatusBarColor(ContextCompat.getColor(this,R.color.colorPrimaryDark));        setContentView(R.layout.activity_main);        mTextView1=(TextView)findViewById(R.id.text_view_1);        mTextView2=(TextView)findViewById(R.id.text_view_2);        mTextView3=(TextView)findViewById(R.id.text_view_3);        View.OnClickListener textViewOnClickListener=new View.OnClickListener() {            @Override            public void onClick(View v) {                switch (v.getId()){                    case R.id.text_view_1:                        mPicViewPager.setCurrentItem(0);                        break;                    case R.id.text_view_2:                        mPicViewPager.setCurrentItem(1);                        break;                    case R.id.text_view_3:                        mPicViewPager.setCurrentItem(2);                }            }        };        mTextView1.setOnClickListener(textViewOnClickListener);        mTextView2.setOnClickListener(textViewOnClickListener);        mTextView3.setOnClickListener(textViewOnClickListener);        mPicViewPager = (ViewPager) findViewById(R.id.pic_view_pager);        initPicFragmentArrayList();        mPicViewPager.setAdapter(new PicFragmentPagerAdapter(getSupportFragmentManager(), mPicFragmentArrayList));        mPicViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {            @Override            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {            }            @Override            public void onPageSelected(int position) {                Log.d(TAG, "position: " + position);                switch (position){                    case 0:                        mTextView1.setTextColor(ContextCompat.getColor(MainActivity.this,R.color.colorPrimary));                        mTextView2.setTextColor(ContextCompat.getColor(MainActivity.this,android.R.color.white));                        mTextView3.setTextColor(ContextCompat.getColor(MainActivity.this,android.R.color.white));                        break;                    case 1:                        mTextView2.setTextColor(ContextCompat.getColor(MainActivity.this,R.color.colorPrimary));                        mTextView1.setTextColor(ContextCompat.getColor(MainActivity.this,android.R.color.white));                        mTextView3.setTextColor(ContextCompat.getColor(MainActivity.this,android.R.color.white));                        break;                    case 2:                        mTextView3.setTextColor(ContextCompat.getColor(MainActivity.this,R.color.colorPrimary));                        mTextView1.setTextColor(ContextCompat.getColor(MainActivity.this,android.R.color.white));                        mTextView2.setTextColor(ContextCompat.getColor(MainActivity.this,android.R.color.white));                }            }            @Override            public void onPageScrollStateChanged(int state) {            }        });    }    private void initPicFragmentArrayList() {        mPicFragmentArrayList.add(PicFragment.getInstance(0));        mPicFragmentArrayList.add(PicFragment.getInstance(1));        mPicFragmentArrayList.add(PicFragment.getInstance(2));    }}

1 0
原创粉丝点击