viewpager+Fragment实现简单滑动切换效果
来源:互联网 发布:淘宝山寨手机店铺 编辑:程序博客网 时间:2024/05/18 02:10
实现的是最简单的viewpager+fragment进行的操作,当然你也可以实现像百度新闻那种联动的的效果,加上一个展示分类的控件,叫什么我忘了。。。。
先来看看效果
就是一个最基础的形式。
下面是代码:
首先在布局中进行viewpager控件的引入:
<android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/viewpager"> </android.support.v4.view.ViewPager>
然后创建好你的fragment对象,这里由于是测试,所以简单创建了一个Fragment的样式:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:layout_width="match_parent" android:background="#ffee00" android:id="@+id/listview1" android:layout_height="match_parent"> </ListView></LinearLayout>
在fragment上加载布局:
package app.frag_viewpagerdemo;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.ArrayAdapter;import android.widget.ListView;/** * Created by Administrator on 2015/8/14 0014. */public class FragmentOne extends Fragment { private ListView listView; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.view1,null); listView= (ListView) view.findViewById(R.id.listview1); ArrayAdapter<String> arrayAdapter=new ArrayAdapter<String>(getActivity(),android.R.layout.simple_expandable_list_item_1); for (int i=0;i<30;i++) { arrayAdapter.add("Fragment1"+i); } listView.setAdapter(arrayAdapter); return view; }}
然后进行viewpager的pageadapter的适配
注意:这里继承FragmentPageAdapter进行配置,比较方便,当然你也可以继承PageAdapter写。
package app.frag_viewpagerdemo;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.view.View;import java.util.List;/** * Created by Administrator on 2015/8/14 0014. */public class MyPageAdapter extends FragmentPagerAdapter { private List<Fragment> fragmentList; public MyPageAdapter(FragmentManager fm,List<Fragment> fragmentList) { super(fm); this.fragmentList=fragmentList; } //得到Item,即所对应的fragment @Override public Fragment getItem(int position) { return fragmentList.get(position); } @Override public int getCount() { return fragmentList.size(); }}
Activity代码:
public class MainActivity extends AppCompatActivity { private ViewPager viewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); viewPager= (ViewPager) findViewById(R.id.viewpager); FragmentManager fm=getSupportFragmentManager(); initData(); MyPageAdapter myPageAdapter=new MyPageAdapter(fm,fragments); viewPager.setAdapter(myPageAdapter); viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { } @Override public void onPageScrollStateChanged(int state) { } }); } private List<Fragment> fragments; private void initData() { fragments=new ArrayList<>(); fragments.add(new FragmentOne()); fragments.add(new FragmentTwo()); }}
你可以在
@Override public void onPageSelected(int position) { }
中进行当viewpager滑动变化时进行相关的操作,比如标题的变化等。
0 0
- viewpager+Fragment实现简单滑动切换效果
- ViewPager+Fragment实现滑动效果,并且能够点击切换
- viewpager+fragment实现滑动效果
- ViewPager + Fragment关闭滑动切换效果
- viewpager+fragment的懒加载实现微信点击和滑动切换功能(切换效果)
- Viewpager+Fragment 实现滑动切换显示内容
- TabLayou+fragment+viewpager实现滑动切换页面
- Viewpager+Fragment实现左右滑动切换页面
- fragment+viewpager+tablayou实现滑动切换页面
- viewpager滑动fragment点击textview切换页面线条滑动效果
- ViewPager+Fragment 滑动菜单效果 实现步骤
- ViewPager+Fragment+RadioGruop实现滑动效果
- Android ViewPager + Fragment 实现滑动标签效果
- ViewPager+Fragment 实现滑动页面的效果
- TabLayout+ViewPager+Fragment实现分页滑动效果
- viewPager来实现fragment滑动效果
- TabLayout+ViewPager+Fragment实现顶部滑动效果
- ActionBarSherlock与Viewpager及Fragment结合实现仿新闻客户端顶部滑动切换效果
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- Hibernate中的实体状态(二)
- js 基础
- 马良建模学习笔记——法式精雕床(一:床体制作)
- hdu 5384 Danganronpa (ac自动机)
- viewpager+Fragment实现简单滑动切换效果
- Google 镜像站搜集
- Chisel Tutorial(五)——Bundles与Vecs
- C#多媒体编程
- achartengine 属性
- 二叉树构造
- Android取得已安装的应用列表
- JPA学习笔记(4)——使用Table策略来生成主键
- 第一章 介绍 实体,属性,关系