所以我有这个DrawAnim.java
类文件,我想在我的MainAcitivty
中使用它的内容。我尝试创建这样的对象:
DrawAnim draw;
在onCreate
方法中,我这样做了:
draw.onDraw(); <- I know I have to pass a parameter but don't know what to pass on.
这是我的班级:
public class DrawAnim extends View {
Bitmap ball;
int x, y;
public DrawAnim(Context context) {
super(context);
ball = BitmapFactory.decodeResource(getResources(), R.drawable.globe);
x=0;
y=0;
}
public void onDraw(Canvas canvas){
super.onDraw(canvas);
Rect ourRect = new Rect();
ourRect.set(0,0,canvas.getWidth(),canvas.getHeight()/2);
Paint red = new Paint();
red.setColor(Color.RED);
red.setStyle(Paint.Style.FILL);
canvas.drawRect(ourRect,red);
if( x < canvas.getWidth()) {
x += 10;
} else{
x =0;
}
if( y < canvas.getHeight()){
y+=10;
}else{
y =0;
}
Paint p = new Paint();
canvas.drawBitmap(ball,x,y,p);
invalidate();
}
}
答案 0 :(得分:0)
您已扩展了View
,因此您必须像使用任何其他视图一样使用它,方法是在运行时以编程方式添加或在布局中使用它。
答案 1 :(得分:0)
以下是在代码中添加视图的方法。应将以下步骤添加到splash onCreate
的{{1}}方法中。
activity
(当然必须更改布局和布局ID)LinearLayout linearLayout = findViewById(R.id.linearlayout);
DrawAnim
希望这能给出一个想法和帮助。
以下是link to an animated splashscreen和very simple splashscreen的链接,仅显示添加视图的其他选项。虽然第二个是非常有限的,它有一点动画,并不会延迟你的应用程序的启动。
答案 2 :(得分:0)
您应该像任何其他视图一样添加它,将上下文传递给自定义视图构造函数,设置Layout params并将其添加到父视图组。
DrawAnim draw = new DrawAnim(this); // 'this' as a context in activity
draw.setLayoutParams(layoutParams);
parentViewGroup.addView(draw);