溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android通過Alpha實現漸變效果的幾個方法

發布時間:2020-05-30 22:47:33 來源:網絡 閱讀:2125 作者:GeniuBen 欄目:移動開發


原理 : 通過改變控制透明度的Alpha值來實現漸變效果


方法一 : 使用XML

    步驟一 : 首先,我們要在res文件夾下的anim文件夾里創建一個.xml文件(這里我創建的是alpha.xml)

    設置開始時透明度為0.0(透明):android:fromAlpha="0.0"

    設置結束時透明度1.0(不透明):android:toAlpha="1.0"


                        

    <alpha

    xmlns:android="http://schemas.android.com/apk/res/android"

    android:fromAlpha="0.0"

    android:toAlpha="1.0"

    android:duration="2000">

    </alpha>


    步驟二 : 接下來就要使用Animation類來實現效果了


    @Override

    protected void onCreate(Bundle savedInstanceState)

    {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);


ImageView but=(ImageView)findViewById(R.id.mainButton);


Animation mAnimation = AnimationUtils.loadAnimation(this, R.anim.alpha); 

but.startAnimation(mAnimation);

    }


方法二 : 使用Paint類

    方法 : 通過Paint.setAlpha();改變圖的Alpha值


     

public class MainActivity extends Activity implements OnTouchListener{

     Paint paint=new Paint();

     

     //設置初始Alpha為100(不透明)

     int al=100;


   

@Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

setContentView(new RenderView(this));

    }


    class RenderView extends View {

       

        protected void onDraw(Canvas canvas){

                        //獲取屏幕長、寬

int height=canvas.getHeight();

int width=canvas.getWidth();

                        //畫一個完全填充的紅色長方形,并改變Alpha值

paint.setStyle(Paint.Style.STROKE);

paint.setColor(Color.RED);

paint.setAlpha(al--);            //改變Alpha(透明度)值

canvas.drawRect(width/2,2,width/3*2,height/2,paint);

                         invalidate();

}

}

}

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女