android中viewPager+fragment实现的屏幕左右切换(进阶篇)
2014-09-14 20:02
435 查看
Fragment支持在不同的Activity中使用并且可以处理自己的输入事件以及生命周期方法等。可以看做是一个子Activity。
先看一下布局:
主文件:ViewPagerActivity继承FragmentActivity
新建fragmentAdapter继承FragmentPagerAdapter并未写出实现的方法
定义要展示的fragment内容,在这只放一个Button
至此实现3个含有Button可以左右切换了
先看一下布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".ViewPagerActivity" > <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" > </android.support.v4.view.ViewPager> </LinearLayout>
主文件:ViewPagerActivity继承FragmentActivity
package com.example.viewpagerdemo; import java.util.ArrayList; import java.util.List; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.view.ViewPager; import com.example.adapter.fragmentAdapter; public class ViewPagerActivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_view_pager); List<Fragment> fragments = new ArrayList<Fragment>(); for (int i = 0; i < 3; i++) { Fragment f = new ButtonFragment(); fragments.add(f); } ViewPager vp = (ViewPager) findViewById(R.id.viewpager); fragmentAdapter fa = new fragmentAdapter(getSupportFragmentManager(), fragments); vp.setAdapter(fa); vp.setCurrentItem(0); } }
新建fragmentAdapter继承FragmentPagerAdapter并未写出实现的方法
package com.example.adapter; import java.util.List; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; public class fragmentAdapter extends FragmentPagerAdapter { private List<Fragment> fragments; private FragmentManager fm; public fragmentAdapter(FragmentManager fm, List<Fragment> fragments) { super(fm); this.fragments = fragments; } public fragmentAdapter(FragmentManager fm) { super(fm); this.fm = fm; } @Override public Fragment getItem(int arg0) { return fragments.get(arg0); } @Override public int getCount() { return fragments.size(); } }
定义要展示的fragment内容,在这只放一个Button
package com.example.viewpagerdemo; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; public class ButtonFragment extends Fragment { private View rootView; 12 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { rootView = inflater.inflate(R.layout.guide1, container, false); return rootView; 18 } 19 }
至此实现3个含有Button可以左右切换了
相关文章推荐
- android中viewPager+fragment实现的屏幕左右切换(进阶篇)
- android中viewPager实现的屏幕左右切换(入门篇)
- Android 利用ViewPager实现底部圆点导航左右滑动效果以及Fragment页面切换
- Android中viewPager实现的屏幕左右切换(入门篇)
- Android之ActionBar、Tabs、Fragment、ViewPager实现标签页切换并缓存页面
- ViewPager---ViewPager example -实现左右两个屏幕的切换
- ViewPager example -实现左右两个屏幕的切换
- ViewPager example -实现左右两个屏幕的切换
- android ViewPager实现页面左右切换效果
- ViewPager example -实现左右两个屏幕的切换
- 【转】Android使用Fragment来实现ViewPager的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- android使用viewPager和Fragment实现滑动切换activity!
- Android使用Fragment来实现ViewPager的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- ViewPager-实现左右两个屏幕的切换
- 安卓笔记android fragment在viewpager中的使用和屏幕切换的状态保存等
- Android使用ViewPager实现左右切换(转)
- Android:使用ViewPager实现左右滑动切换图片(图上有点点)
- Android通过ViewPager实现左右滑动切换图片
- ViewPager实现左右两个屏幕的切换
- Android编程心得-使用ActionBar+Fragment+ViewPager实现动态切换Menu效果