最初のQ.これをファイル内の別の場所に移動するための作業コードがあります-それは問題ではありません。問題は、移動可能な放射状グラデーションをどのように作成するかです(API 16の下)。
スナークを先取りして、私はここで多くの時間を過ごしました:
http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html
GradientDrawable(下記)では、非放射状の方向も設定せずに色を設定する方法はないようです。
public class CustomView extends View {
int width = (sWidth/8); // sWidth defined elsewhere as width of screen
int height = (sWidth/8);
GradientDrawable gradient;
int[] colors = {0x60ffffff,0x000000};
public CustomView(Context context) {
super(context);
gradient = new GradientDrawable(GradientDrawable.Orientation.BL_TR,colors);
}
protected void onDraw(Canvas canvas) {
if(x != 0 && y != 0){ // OnTouch calls invalidate on this view for movement
gradient.mutate();
gradient.setShape(GradientDrawable.RADIAL_GRADIENT);
// This just makes it disappear:
// setGradientType (GradientDrawable.RADIAL_GRADIENT);
gradient.setBounds(x-width/2, y-height/2, x + width, y + height);
gradient.draw(canvas);
}
}
}
これもあります:
http://developer.android.com/reference/android/graphics/RadialGradient.html
しかし、そのグラデーションを動かす方法はないようです。移動可能なある種の透明な円に放射状のグラデーションを配置できますか?私は途方に暮れています。よろしくお願いします。