安卓中闪烁视频示例
原文:https://www . geeksforgeeks . org/shimmerlayut-in-Android-with-examples/
微光游可以用来给安卓应用增加一个微光效果(就像 【脸书】 或者 LinkedIn 的那个)。这种布局主要用于应用程序从应用程序接口获取数据,但任务是长期运行的任务。因此,最好添加微光布局而不是显示空白屏幕,因为它通知用户布局处于加载状态。
优势:
- ShimmerLayout 是内存高效的。
- 可以根据应用的需要进行定制。
劣势:
- 不推荐使用。
进场:
-
在 build.gradle 文件中添加支持库,并在依赖项部分添加依赖项。它允许开发人员直接使用内置功能。
```java
dependencies { implementation 'io.supercharge:shimmerlayout:2.1.0' } ```
-
在可绘制文件夹中创建 circle.xml 文件,并添加以下代码。这将与 textview 一起在 ShimmerLayout 中使用。
java <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <size android:height="40dp" android:width="40dp"/> <corners android:radius="20dp"/> <solid android:color="#D3D3D3"/> </shape>
-
在 activity_main.xml 文件中添加以下代码。在该文件中,添加微光视频及其子视图。添加圆圈。ImageView 中 src 标签中的 XML。
activity _ main . XML
```java
io.supercharge.shimmerlayout.ShimmerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/shimmer_layout" android:layout_width="match_parent" android:layout_height="wrap_content" app:shimmer_animation_duration="2000" ImageView android:layout_marginStart="10dp" android:src="@drawable/circle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="10dp" / ImageView android:layout_marginStart="10dp" android:src="@drawable/circle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="10dp" / ImageView android:layout_marginStart="10dp" android:src="@drawable/circle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="10dp" / ```
-
在MainActivity.java文件中添加以下代码。在这个文件中,开始微光动画方法用于在微光视频上开始动画。
MainActivity.java
```java package org.geeksforgeeks.shimmerLayout;
import android.os.Bundle; import android.view.View; import android.widget.Button; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import io.supercharge.shimmerlayout.ShimmerLayout;
public class MainActivity extends AppCompatActivity {
@Override protected void onCreate( @Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
ShimmerLayout layout = findViewById( R.id.shimmer_layout); layout.startShimmerAnimation(); } } ```
Output:
Reference:
版权属于:月萌API www.moonapi.com,转载请注明出处