一、引入依赖
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}
dependencies {
implementation("com.github.githubwing:ThreeDLayout:1.0.0")
}
二、xml使用
<?xml version="1.0" encoding="utf-8"?>
<com.wingsofts.threedlayout.ThreeDLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/td_layout"
android:background="@drawable/bg_trans_radius"
android:layout_width="@dimen/dp_200"
android:layout_height="@dimen/dp_200"
>
<ImageView
android:id="@+id/modelPic"
android:layout_width="@dimen/dp_200"
android:layout_height="@dimen/dp_200"
android:src="@drawable/location"
android:layout_centerInParent="true"
/>
</com.wingsofts.threedlayout.ThreeDLayout>
三、在RecyclerView中使用
可以实现指定位置item翻转
binding.chooseModel.setOnClickListener {
val viewHolder = binding.rvContent.findViewHolderForAdapterPosition(choosePosition)
if (viewHolder?.itemView != null) {
val tdLayout: ThreeDLayout = viewHolder.itemView.findViewById(R.id.td_layout)
tdLayout.startHorizontalAnimate()
Thread {
try {
Thread.sleep(2500)
} catch (e: InterruptedException) {
e.printStackTrace()
}
runOnUiThread {
tdLayout.stopAnimate()
showToasts("翻转结束")
}
}.start()
}
}