ParallaxImageView在Android ImageView上实现视差和变换效果

滚动视图上的图像加点动态效果,一直是提升用户体验的一个小技巧。ParallaxImageView就挺适合干这事儿——能在你上下或者左右滑动的时候,给加上视差效果。视觉上更有层次,交互也显得高级了不少。

这个库的使用方式也挺直接。第一步,你把它加进build.gradle里:

allprojects {
  repositories {
    maven { url 'https://jitpack.io' }
  }
}

第二步,引入依赖:

dependencies {
  implementation 'com.github.abdularis:parallaximageview:1.1'
}

想实现垂直滚动视差,用VerticalScrollParallaxImageView就行:

横向的也有,叫HorizontalScrollParallaxImageView。嗯,命名直白,比较友好。你要是项目里有图片列表、banner 轮播、甚至是登录页背景图,搭配视差动效,效果真的还不错。

不过要注意,图太大了性能会吃紧,尤其在老设备上。可以配合图片压缩预加载这些优化手段一起上。

如果你做安卓开发,经常需要点小交互提升体验,这库可以试试看。不用自己写复杂的监听逻辑,封装得还挺省事。

另外还可以看看这些相关的玩法:

zip
ParallaxImageView-master.zip 预估大小:70个文件
folder
ParallaxImageView-master 文件夹
file
gradlew 5KB
file
settings.gradle 27B
folder
library 文件夹
folder
src 文件夹
folder
main 文件夹
file
AndroidManifest.xml 116B
folder
res 文件夹
folder
values 文件夹
file
strings.xml 87B
folder
java 文件夹
folder
com 文件夹
folder
github 文件夹
folder
abdularis 文件夹
folder
piv 文件夹
file
VerticalScrollParallaxImageView.kt 490B
file
ScrollTransformImageView.kt 1KB
file
HorizontalScrollParallaxImageView.kt 496B
folder
transformer 文件夹
file
ViewTransformer.kt 1KB
file
HorizontalScaleTransformer.kt 1KB
file
HorizontalParallaxTransformer.kt 2KB
file
VerticalParallaxTransformer.kt 2KB
file
.gitignore 7B
file
build.gradle 888B
file
proguard-rules.pro 751B
file
LICENSE 1KB
folder
gradle 文件夹
folder
wrapper 文件夹
file
gradle-wrapper.properties 230B
file
gradle-wrapper.jar 53KB
file
README.md 4KB
folder
screenshots 文件夹
file
screenshot_1.gif 1.85MB
file
gradlew.bat 2KB
file
gradle.properties 726B
file
.gitignore 137B
folder
logo 文件夹
file
logo_mdpi.png 9KB
file
LogoType.svg 4KB
file
logo_ldpi.png 7KB
file
logo_xxhdpi.png 31KB
file
logo_xhdpi.png 20KB
file
logo_xxxhdpi.png 45KB
file
logo_hdpi.png 15KB
folder
app 文件夹
folder
src 文件夹
folder
androidTest 文件夹
folder
java 文件夹
folder
com 文件夹
folder
github 文件夹
folder
abdularis 文件夹
folder
pivsample 文件夹
file
ExampleInstrumentedTest.kt 663B
folder
test 文件夹
folder
java 文件夹
folder
com 文件夹
folder
github 文件夹
folder
abdularis 文件夹
folder
pivsample 文件夹
file
ExampleUnitTest.kt 355B
folder
main 文件夹
file
AndroidManifest.xml 980B
folder
res 文件夹
folder
mipmap-hdpi 文件夹
file
ic_launcher.png 3KB
file
ic_launcher_round.png 5KB
folder
mipmap-xxxhdpi 文件夹
file
ic_launcher.png 9KB
file
ic_launcher_round.png 15KB
folder
mipmap-xhdpi 文件夹
file
ic_launcher.png 4KB
file
ic_launcher_round.png 7KB
folder
mipmap-anydpi-v26 文件夹
file
ic_launcher.xml 270B
file
ic_launcher_round.xml 270B
folder
mipmap-mdpi 文件夹
file
ic_launcher.png 2KB
file
ic_launcher_round.png 3KB
folder
drawable 文件夹
file
img3.jpg 29KB
file
img4.jpg 31KB
file
img6.jpg 37KB
file
img8.jpg 42KB
file
ic_launcher_background.xml 5KB
file
img5.jpg 44KB
file
img1.jpg 19KB
file
img2.jpg 52KB
file
img7.jpg 41KB
folder
layout 文件夹
file
activity_vertical_parallax.xml 565B
file
item_image.xml 492B
file
item_image_horizontal.xml 530B
file
activity_horizontal_parallax.xml 570B
file
activity_main.xml 810B
folder
drawable-v24 文件夹
file
ic_launcher_foreground.xml 2KB
folder
values 文件夹
file
colors.xml 208B
file
strings.xml 81B
file
styles.xml 381B
folder
mipmap-xxhdpi 文件夹
file
ic_launcher.png 6KB
file
ic_launcher_round.png 10KB
folder
java 文件夹
folder
com 文件夹
folder
github 文件夹
folder
abdularis 文件夹
folder
pivsample 文件夹
file
MainActivity.kt 655B
file
VerticalParallaxActivity.kt 675B
file
ImageListAdapter.kt 1KB
file
HorizontalParallaxActivity.kt 657B
file
.gitignore 7B
file
build.gradle 1KB
file
proguard-rules.pro 751B
file
build.gradle 678B
...
zip 文件大小:2.39MB