您好,登錄后才能下訂單哦!
在 Android 中,可以通過(guò)編寫(xiě)自定義的滑動(dòng)動(dòng)畫(huà)效果來(lái)滿(mǎn)足各種需求
創(chuàng)建一個(gè)新的 Android 項(xiàng)目(如果尚未創(chuàng)建),并選擇 Empty Activity 模板。
在 res/anim
目錄下創(chuàng)建兩個(gè)新的 XML 動(dòng)畫(huà)文件:translate_in.xml
和 translate_out.xml
。如果 anim
目錄不存在,請(qǐng)創(chuàng)建一個(gè)。
編輯 translate_in.xml
文件,添加以下代碼:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="100%"
android:toXDelta="0"
android:duration="300" />
</set>
這將創(chuàng)建一個(gè)從右側(cè)滑入的動(dòng)畫(huà)效果。fromXDelta
屬性的值表示動(dòng)畫(huà)開(kāi)始時(shí)的 X 軸偏移量,toXDelta
屬性的值表示動(dòng)畫(huà)結(jié)束時(shí)的 X 軸偏移量,duration
屬性表示動(dòng)畫(huà)持續(xù)時(shí)間(以毫秒為單位)。
translate_out.xml
文件,添加以下代碼:<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0"
android:toXDelta="-100%"
android:duration="300" />
</set>
這將創(chuàng)建一個(gè)從左側(cè)滑出的動(dòng)畫(huà)效果。
MainActivity.java
文件中,添加以下代碼以在按鈕點(diǎn)擊事件中應(yīng)用滑動(dòng)動(dòng)畫(huà)效果:import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = findViewById(R.id.button);
// 加載并設(shè)置滑動(dòng)動(dòng)畫(huà)效果
Animation fadeInAnimation = AnimationUtils.loadAnimation(this, R.anim.translate_in);
Animation fadeOutAnimation = AnimationUtils.loadAnimation(this, R.anim.translate_out);
// 設(shè)置按鈕點(diǎn)擊事件
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 應(yīng)用滑動(dòng)動(dòng)畫(huà)效果
v.startAnimation(fadeInAnimation);
button.postDelayed(new Runnable() {
@Override
public void run() {
v.startAnimation(fadeOutAnimation);
}
}, 300); // 動(dòng)畫(huà)持續(xù)時(shí)間相同,以便看到連貫的滑動(dòng)效果
}
});
}
}
現(xiàn)在,當(dāng)用戶(hù)點(diǎn)擊按鈕時(shí),將看到一個(gè)從右側(cè)滑入,然后從左側(cè)滑出的動(dòng)畫(huà)效果。你可以根據(jù)需要調(diào)整動(dòng)畫(huà)參數(shù)以實(shí)現(xiàn)所需的效果。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。