天天看點

android bitmap 陰影,Android程式設計之陰影(Shadow)制作方法

本文執行個體講述了Android程式設計之陰影(Shadow)制作方法。分享給大家供大家參考,具體如下:

先看運作效果圖如下:

陰影制作:包括各種形狀(矩形,圓形等等),以及文字等等都能設定陰影。

陰影制作是什麼原理呢?

其實很簡單,你需要設定陰影的東西被看作一個主層。然後在主層下面畫一個陰影層。

陰影制作涉及到一個重要函數:public void setShadowLayer (float radius, float dx, float dy, int color)

參數:

radius:陰影半徑

dx:X軸方向的偏移量

dy:Y軸方向的偏移量

color:陰影顔色

注意:如果半徑被設定為0,意思就是去掉陰影。

具體實作:package xiaosi.textShadow;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.os.Bundle;import android.view.View;public class TextShadowActivity extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(new drawCanvas(this)); } class drawCanvas extends View { private Bitmap bitmap = null; public drawCanvas(Context context) { super(context); bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.i_skinprocess); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // 建立Paint 物件 Paint paint1 = new Paint(); // 設定顔色 paint1.setColor(0xFFFFFF00); // 設定陰影(柔邊, X 軸位移, Y 軸位移, 陰影顔色) paint1.setShadowLayer(5, 3, 3, 0xFFFF00FF); // 實心矩形& 其陰影 canvas.drawText("我很愛你", 20,40,paint1); Paint paint2 = new Paint(); paint2.setColor(Color.GREEN); paint2.setShadowLayer(10, 5, 2, Color.YELLOW); canvas.drawText("你真傻", 20,60,paint2); Paint paint3 = new Paint(); paint3.setColor(Color.RED); paint3.setShadowLayer(30, 5, 2, Color.GREEN); canvas.drawCircle(50, 130,30, paint3); Paint paint4 = new Paint(); paint4.setShadowLayer(5, 8, 7, Color.DKGRAY); canvas.drawBitmap(bitmap, 50, 200, paint4); } }}

更多關于Android相關内容感興趣的讀者可檢視本站專題:《Android圖形與圖像處理技巧總結》、《Android開發入門與進階教程》、《Android調試技巧與常見問題解決方法彙總》、《Android多媒體操作技巧彙總(音頻,視訊,錄音等)》、《Android基本元件用法總結》、《Android視圖View技巧總結》、《Android布局layout技巧總結》及《Android控件用法總結》

希望本文所述對大家Android程式設計有所幫助。