ก่อนเข้าสู่ตัวอย่าง เราควรรู้ว่า Gradient color คืออะไร ตามวิกิพีเดีย ในคอมพิวเตอร์กราฟิก การไล่ระดับสี (บางครั้งเรียกว่าทางลาดสีหรือความก้าวหน้าของสี) ระบุช่วงของสีที่ขึ้นกับตำแหน่ง ซึ่งมักใช้เพื่อเติมพื้นที่ ตัวอย่างเช่น ตัวจัดการหน้าต่างจำนวนมากอนุญาตให้ระบุพื้นหลังหน้าจอเป็นการไล่ระดับสี
ตัวอย่างนี้สาธิตวิธีสร้างพื้นหลังการไล่ระดับสีแบบเคลื่อนไหวใน Android
ขั้นตอนที่ 1 − สร้างโครงการใหม่ใน Android Studio ไปที่ไฟล์ ⇒ โครงการใหม่และกรอกรายละเอียดที่จำเป็นทั้งหมดเพื่อสร้างโครงการใหม่
ขั้นตอนที่ 2 − เพิ่มรหัสต่อไปนี้ใน res/layout/activity_main.xml
ก่อน> ในโค้ดด้านบนนี้ เราได้เพิ่มพื้นหลังเป็น gradient_animation ในรูปแบบ drawable ตอนนี้สร้าง gradient_animation.xml ในโฟลเดอร์ drawable และเพิ่มรหัสต่อไปนี้ -
<รายการ android:drawable ="@drawable/drawable_purple_gradient" android:duration ="3000" /> <รายการ android:drawable ="@drawable/drawable_amber_gradient" android:duration ="3000" /> <รายการ android:drawable ="@drawable/drawable_green_gradient" android:duration ="3000" /> <รายการ android:drawable ="@drawable/drawable_red_gradient" android:duration ="3000" /> ในรายการแอนิเมชั่นด้านบน เราได้เพิ่มรายการย่อย 4 รายการและเพิ่มระยะเวลาสำหรับการดูแอนิเมชั่นแต่ละรายการ หลังจากหมดเวลา มันจะเปลี่ยนพื้นหลัง ใน drawable_purple_gradient มีพื้นหลังสีม่วง ดังนั้นให้สร้างไฟล์ชื่อ drawable_purple_gradient.xml ในโฟลเดอร์ drawable และเพิ่มรหัสต่อไปนี้ -
ตามขั้นตอนข้างต้น ให้สร้าง drawable_amber_gradient.xml, drawable_green_gradient.xml และ drawable_red_gradient.xml ในโฟลเดอร์ Drawable และเพิ่มโค้ดต่อไปนี้ตามที่แสดงด้านล่าง -
drawable_amber_gradient.xml-
drawable_green_gradient.xml -
drawable_red_gradient.xml -
ขั้นตอนที่ 3 − เพิ่มรหัสต่อไปนี้ไปที่ src/MainActivity.java-
แพ็คเกจ com.example.andy.myapplication;import android.graphics.drawable.AnimationDrawable;import android.support.constraint.ConstraintLayout;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;คลาสสาธารณะ MainActivity ขยาย AppCompatActivity { ส่วนตัว ConstraintLayout constraintLayout; แอนิเมชั่นส่วนตัว แอนิเมชั่นวาดได้ วาดได้; @Override ป้องกันโมฆะ onCreate (Bundle saveInstanceState) { super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); constraintLayout =(เค้าโครงข้อจำกัด) findViewById(R.id.constraintLayout); animationDrawable =(AnimationDrawable) ข้อ จำกัด Layout.getBackground (); animationDrawable.setEnterFadeDuration(3000); animationDrawable.setExitFadeDuration(2000); } @Override ป้องกันโมฆะ onResume () { super.onResume (); if (animationDrawable ! =null &&!animationDrawable.isRunning()) { animationDrawable.start(); } } @Override ป้องกัน โมฆะ onPause() { super.onPause(); if (animationDrawable ! =null &&animationDrawable.isRunning()) { animationDrawable.stop(); } }}มาลองเรียกใช้แอปพลิเคชันของคุณกัน ฉันคิดว่าคุณได้เชื่อมต่ออุปกรณ์มือถือ Android จริงกับคอมพิวเตอร์ของคุณ ในการรันแอพจาก android studio ให้เปิดไฟล์กิจกรรมของโปรเจ็กต์แล้วคลิกไอคอน Run จากแถบเครื่องมือ เลือกอุปกรณ์มือถือของคุณเป็นตัวเลือก แล้วตรวจสอบอุปกรณ์มือถือของคุณซึ่งจะแสดงหน้าจอเริ่มต้นของคุณ -
ดังที่แสดงผลลัพธ์ข้างต้นทุกๆ 3 วินาที มันจะเปลี่ยนสีพื้นหลัง