android+炫酷侧滑效果,Android ViewPager酷炫的卡片滑动效果

本文展示了如何在Android应用中实现一个炫酷的ViewPager卡片滑动效果。通过MainActivity.java、CardAdapter.java等代码示例,创建了一个包含多个卡片的ViewPager,每个卡片可以进行平滑缩放和阴影变换,提供了丰富的视觉体验。
摘要由CSDN通过智能技术生成

一、效果图

94c4cb345d4ff0f9a1d52cbc181b8cc4.gif

二、实现代码

MainActivity.java

package com.github.rubensousa.viewpagercards;

import android.support.v4.view.ViewPager;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity{

private ViewPager mViewPager;

private CardPagerAdapter mCardAdapter;

private ShadowTransformer mCardShadowTransformer;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mViewPager = (ViewPager) findViewById(R.id.viewPager);

mCardAdapter = new CardPagerAdapter();

mCardAdapter.addCardItem(new CardItem(R.string.title_1, R.string.text_1));

mCardAdapter.addCardItem(new CardItem(R.string.title_2, R.string.text_1));

mCardAdapter.addCardItem(new CardItem(R.string.title_3, R.string.text_1));

mCardAdapter.addCardItem(new CardItem(R.string.title_4, R.string.text_1));

mCardShadowTransformer = new ShadowTransformer(mViewPager, mCardAdapter);

mCardShadowTransformer.enableScaling(true);

mViewPager.setAdapter(mCardAdapter);

mViewPager.setPageTransformer(false, mCardShadowTransformer);

mViewPager.setOffscreenPageLimit(3);

}

}

CardAdapter.java

package com.github.rubensousa.viewpagercards;

import android.support.v7.widget.CardView;

public interface CardAdapter {

int MAX_ELEVATION_FACTOR = 8;

float getBaseElevation();

CardView getCardViewAt(int position);

int getCount();

}

CardItem.java

package com.github.rubensousa.viewpagercards;

public class CardItem {

private int mTextResource;

private int mTitleResource;

public CardItem(int title, int text) {

mTitleResource = title;

mTextResource = text;

}

public int getText() {

re

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值