Android通过Alpha实现渐变效果的几个方法-创新互联

原理 : 通过改变控制透明度的Alpha值来实现渐变效果

遂平ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

方法一 : 使用XML

  步骤一 : 首先,我们要在res文件夹下的anim文件夹里创建一个.xml文件(这里我创建的是alpha.xml)

  设置开始时透明度为0.0(透明):android:fromAlpha="0.0"

  设置结束时透明度1.0(不透明):android:toAlpha="1.0"

  

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

  android:fromAlpha="0.0"

  android:toAlpha="1.0"

  android:duration="2000">

  

  步骤二 : 接下来就要使用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();

}

}

}

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文标题:Android通过Alpha实现渐变效果的几个方法-创新互联
本文链接:http://scyanting.com/article/ccpgoc.html