Android实现横向滑动卡片效果

这篇文章主要为大家详细介绍了Android实现横向滑动卡片效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

最近项目上需要实现这样效果的一个页面,本来想找个现成的两下搞定,但是问了半天度娘也没招,索性自己琢磨琢磨(这里边也少不了同事的帮助),先把最终的效果图贴上:

理论上讲,其本质并不复杂,就是一个viewpager,但是第一次实现这样的效果还是要花些时间的,具体的代码如下:

主布局文件:activity_show_industry_list.xml,主要就是一个activity上放个viewpager,但是相对布局是关键

    

fragment布局文件:fragment_show_industry_list.xml  该布局对应的类比较简单,就不往上贴了

     

主布局类ShowIndustryListActivity.java

 public class ShowIndustryListActivity extends BaseActivity { private FragmentPagerAdapter pagerada; private ShowIndustryListFragment showIndustryListFragment; ShowIndustryListFragment fragment1,fragment2,fragment3,fragment4; ArrayList fragments; @Bind(R.id.vp_show_industry_list) ViewPager viewPager; FragmentManager fragmentManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_show_industry_list); ButterKnife.bind(this); fragmentManager = getSupportFragmentManager(); fragments= new ArrayList(); fragment1 = new ShowIndustryListFragment(); fragment2 = new ShowIndustryListFragment(); fragment3 = new ShowIndustryListFragment(); fragment4 = new ShowIndustryListFragment(); fragments.add(fragment1); fragments.add(fragment2); fragments.add(fragment3); fragments.add(fragment4); viewPager.setOffscreenPageLimit(fragments.size());//卡片数量 viewPager.setPageMargin(10);//两个卡片之间的距离,单位dp if (viewPager!=null){ viewPager.removeAllViews(); } MyFragmentPagerAdapter myFragmentPagerAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager(), fragments); viewPager.setAdapter(myFragmentPagerAdapter); } class MyFragmentPagerAdapter extends FragmentPagerAdapter { private ArrayList listFragments; public MyFragmentPagerAdapter(FragmentManager fm, ArrayList al) { super(fm); listFragments = al; } public MyFragmentPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { return listFragments.get(position); } @Override public int getCount() { return listFragments.size(); } @Override public int getItemPosition(Object object) { return super.getItemPosition(object); } } }

至此,效果就可以实现了,上手试试吧。

更多关于滑动功能的文章,请点击专题: 《Android滑动功能》

以上就是Android实现横向滑动卡片效果的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » 移动