您好我已经制作了自定义视图和lifebarprocess.xml。我想在我的自定义视图中绘制生活栏以及我绘制的所有其他内容。但我不知道如何:
-Creat / reference我视图中的进程条以及如何绘制它。 - 可以更改进度条xml?
自定义视图(简称):
public class Gamecontroller_View extends View implements OnGestureListener{
private Paint mPaint;
public Gamecontroller_View(){
mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
mPaint.setColor(Color.BLUE);
mPaint.setMaskFilter(new BlurMaskFilter(15, Blur.OUTER));
mPaint.setStyle(Paint.Style.FILL_AND_STROKE);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if (fingerpointer != null){
mPaint.setColor(colors[0]);
canvas.drawCircle(fingerpointer.x, fingerpointer.y, 30, mPaint);
}
//I want to draw a Progressbar's current appearance here
}
}
lifeprocessbar.xml:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/background">
<shape>
<corners android:radius="5dip" />
<gradient
android:angle="270"
android:centerColor="#ff5a5d5a"
android:centerY="0.5"
android:endColor="#ff747674"
android:startColor="#ff9d9e9d" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:angle="0"
android:endColor="#ff0000"
android:startColor="#ff3300" />
</shape>
</clip>
</item>
</layer-list>
还有lifebarprocess_layout:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ProgressBar
android:id="@+id/playerlifeprocessbar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="30dp"
android:progress="90"
android:progressDrawable="@drawable/lifeprocessbar" />
</LinearLayout>
我的某人可以提供帮助 - 谢谢你的帮助。
答案 0 :(得分:1)
您可以考虑在Gamecontroller_View
而不是View中扩展ViewGroup。来自文档:
ViewGroup是一个特殊视图,可以包含其他视图(称为 children。)视图组是布局和视图的基类 容器