android lottie tab 源码
时间: 2023-07-30 12:04:18 浏览: 141
以下是一个简单的 Android Lottie Tab 的示例代码:
XML 布局文件:
```
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabIndicatorColor="@color/colorAccent"
app:tabSelectedTextColor="@color/colorAccent"
app:tabTextColor="@android:color/darker_gray" />
```
Java 代码:
```
TabLayout tabLayout = (TabLayout) findViewById(R.id.tab_layout);
// 添加 Tab
tabLayout.addTab(tabLayout.newTab().setText("动画 1"));
tabLayout.addTab(tabLayout.newTab().setText("动画 2"));
tabLayout.addTab(tabLayout.newTab().setText("动画 3"));
// 设置 TabLayout.OnTabSelectedListener
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
switch (tab.getPosition()) {
case 0:
// 显示动画 1
loadAnimation("animation_1.json");
break;
case 1:
// 显示动画 2
loadAnimation("animation_2.json");
break;
case 2:
// 显示动画 3
loadAnimation("animation_3.json");
break;
}
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
// 加载动画
private void loadAnimation(String fileName) {
LottieAnimationView animationView = (LottieAnimationView) findViewById(R.id.animation_view);
animationView.setAnimation(fileName);
animationView.playAnimation();
}
```
需要注意的是,上述示例中用到了 LottieAnimationView,需要在 build.gradle 文件中添加以下依赖:
```
dependencies {
implementation 'com.airbnb.android:lottie:3.4.0'
}
```
阅读全文