Android的ViewPager,ViewPager配合Fragment的用法
来源:互联网 发布:godaddy主机绑定域名 编辑:程序博客网 时间:2024/06/01 08:22
MainActivity.java
package com.hust.viewpaper;import java.util.ArrayList;import android.app.Activity;import android.os.Bundle;import android.support.v4.view.PagerAdapter;import android.support.v4.view.ViewPager;import android.view.LayoutInflater;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewGroup;public class MainActivity extends Activity { ArrayList<View> mViewList=new ArrayList<View>(); ViewPager mViewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initViews(); PagerAdapter mPaperAdapter=new PagerAdapter(){ //返回要滑动的VIew的个数@Overridepublic int getCount() {return mViewList.size();} @Overridepublic boolean isViewFromObject(View arg0, Object arg1) {return arg0==arg1;}//从当前container中删除指定位置(position)的View@Overridepublic void destroyItem(ViewGroup container, int position,Object object) {container.removeView(mViewList.get(position));} //做了两件事,第一:将当前视图添加到container中,第二:返回当前View@Overridepublic Object instantiateItem(ViewGroup container, int position) {container.addView(mViewList.get(position));return mViewList.get(position);} }; //设置适配器 mViewPager.setAdapter(mPaperAdapter); } public void initViews() { mViewPager=(ViewPager) findViewById(R.id.viewpager); View mView1=LayoutInflater.from(this).inflate(R.layout.layout1, null);View mView2=LayoutInflater.from(this).inflate(R.layout.layout2, null);View mView3=LayoutInflater.from(this).inflate(R.layout.layout3, null);mViewList.add(mView1);mViewList.add(mView2);mViewList.add(mView3);}}
ViewPagerWithFragment
FragmentOne.java
package com.hust.viewpagerwithfragment;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;public class FragmentOne extends Fragment {@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {super.onCreateView(inflater, container, savedInstanceState);View view =inflater.inflate(R.layout.fragment_layout1, container,false);return view;} }
FragmentTwo.java
package com.hust.viewpagerwithfragment;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;public class FragmentTwo extends Fragment{@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment_layout2, container,false); return view;} }FragmentThree.java
package com.hust.viewpagerwithfragment;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;public class FragmentThree extends Fragment {@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreateView(inflater, container, savedInstanceState);View view=inflater.inflate(R.layout.fragment_layout3, container,false);return view;}}
MainActivity.java
package com.hust.viewpagerwithfragment;import java.util.ArrayList;import android.app.Activity;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import android.support.v4.view.ViewPager;import android.view.Menu;import android.view.MenuItem;public class MainActivity extends FragmentActivity {//显示Fragment的Activity要继承FragmentActivity ArrayList<Fragment> mFragmentList=new ArrayList<Fragment>(); ViewPager mViewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initViews(); initDatas(); //实例化适配器,并把list集合传进去 ViewPagerAdapter mViewPagerAdapter=new ViewPagerAdapter(getSupportFragmentManager(),mFragmentList); //设置适配器 mViewPager.setAdapter(mViewPagerAdapter); } private void initDatas() { mFragmentList.add(new FragmentOne()); mFragmentList.add(new FragmentTwo()); mFragmentList.add(new FragmentThree()); }private void initViews() {mViewPager=(ViewPager) findViewById(R.id.MyViewPager);}}适配器
package com.hust.viewpagerwithfragment;import java.util.List;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;public class ViewPagerAdapter extends FragmentPagerAdapter {//继承FragmentPagerAdapter,只需要重写getItem和getCount方法List<Fragment> mFragmentList;public ViewPagerAdapter(FragmentManager fm,List<Fragment> mFragmentList) {super(fm);this.mFragmentList=mFragmentList;}@Overridepublic Fragment getItem(int arg0) {return mFragmentList.get(arg0);}@Overridepublic int getCount() {return mFragmentList.size();}}
0 0
- Android的ViewPager,ViewPager配合Fragment的用法
- Android中Fragment+ViewPager的配合使用
- Android:Fragment 与 ViewPager的配合使用
- Android中Fragment+ViewPager的配合使用
- Android Fragment+ViewPager的用法
- ViewPager与fragment配合使用的优势
- fragment、viewpager、radiogroup的配合使用
- ViewPager的使用(三)-viewPager与Fragment配合使用
- Android-Viewpager+fragment的实现
- Android ViewPager + Fragment的使用
- Android ViewPager+Fragment的使用
- 关于viewpager配合fragment,菜单(optionmenu)的问题
- 关于ViewPager+Fragment配合使用时的几个要点
- 关于ViewPager和Fragment配合使用生命周期的问题。
- ListView+Fragment+ViewPager配合,实现今日头条的效果
- TabLayout与ViewPager和Fragment、FragmentPagerAdapter的配合使用
- ViewPager的用法(3)——ViewPager嵌套Fragment
- ViewPager、ViewPager和Fragment组合使用的基本用法
- 万万没想到、小孩学武术竟然有这么多好处!
- poj 2828
- 机器学习算法汇总
- Linux定时任务crontab
- 【2】机器学习之兄弟连:K近邻和K-means
- Android的ViewPager,ViewPager配合Fragment的用法
- MySql 外键约束 之CASCADE、SET NULL、RESTRICT、空等类型分析和作用解读
- Hello Hexo
- Ubuntu14+Nginx安装配置(edusoho)
- JavaScript对字符串操作的方法
- Android购物车初步实现1(UI篇)
- 常规功能和模块自定义系统 (cfcmms)—047模块导航功能的重构(5)导航属性的定义
- 用mybatis 更新数据
- 数值的整数次方15