如何从内部存储而不是 Lottie 动画视图中的资产文件夹传递 JSON 动画文件?
3292 次
2 回答
0
Lottie Library 仅使用 fileName 属性从 assets 文件夹中设置 JSON 文件。例如:
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/anim_iv"
android:layout_width="wrap_content"
android:layout_height="300dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
app:lottie_fileName="sample.json"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_imageAssetsFolder="images"
/>
如果您尝试从内部或外部存储设置 JSON 文件,则它将无法正常工作。您必须从字符串中的 JSON 文件加载所有 JSON 数据,并使用 setAnimationFromJson() 方法将其设置为 LottieAnimationView,如下所示 -
LottieCompositionFactory.fromJsonString(json,getString(R.string.app_name)).addListener(new LottieListener<LottieComposition>() {
@Override
public void onResult(LottieComposition result) {
animView.setComposition(result);
});
于 2019-05-31T13:24:27.940 回答
-1
你会想要一些类似的东西
File TEST = new File(Environment.getExternalStorageDirectory(), "TEST");
TEST.mkdir(); // make directory may want to check return value
String path = TEST.getAbsolutePath(); // get absolute path
和权限
<manifest ...>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
...
</manifest>
于 2019-01-22T13:15:40.463 回答