先在ANDROID中将PNG设置为背景画布图像,然后在顶部使用另一个图像,但不起作用
我需要帮助来理解我做错了什么。我正在设置一个PNG图像作为我的背景(画布),然后我想把另一个PNG图像放在一个特定坐标的顶部。但问题是,当我首先设置背景画布PNG时,它保持在那里,但当另一个图像(在顶部)加载时,背景画布消失。所以很明显我做的不对 android开发者社区的任何建议都将不胜感激 谢谢 代码如下: startNewName.java:先在ANDROID中将PNG设置为背景画布图像,然后在顶部使用另一个图像,但不起作用,android,android-canvas,Android,Android Canvas,我需要帮助来理解我做错了什么。我正在设置一个PNG图像作为我的背景(画布),然后我想把另一个PNG图像放在一个特定坐标的顶部。但问题是,当我首先设置背景画布PNG时,它保持在那里,但当另一个图像(在顶部)加载时,背景画布消失。所以很明显我做的不对 android开发者社区的任何建议都将不胜感激 谢谢 代码如下: startNewName.java: package com.firm.armouredassault; import android.app.Activity; import and
package com.firm.armouredassault;
import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
public class StartNewGame extends Activity {
MyGame ourView;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
ourView = new MyGame(this);
setContentView(ourView);
}
}
Mygame.java
package com.firm.armouredassault;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.view.View;
public class MyGame extends View {
Bitmap BTank, TShell;
public MyGame(Context context) {
super(context);
// TODO Auto-generated constructor stub
BTank = BitmapFactory.decodeResource(getResources(), R.drawable.bluetanksm);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
canvas.drawBitmap(BTank, 10, 200, null);
}
}
newgame.xml:
<?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:background="@drawable/canvas"
android:orientation="vertical" >
</LinearLayout>
在画布上写一个位图,在方法和画布作为参数的帮助下将此画布传递到新画布,然后如果在新画布上写一个新的bitbap,它将被写入我是Android新手,因此,如果我理解正确,我会将画布作为意图传递给新画布??无论如何,让我尝试一下,然后返回给您。不是意图,像show(canvas canvas)一样传递,并且在您提供方法主体的地方,show,,会自动创建一个新画布,您可以在该画布上添加另一个位图!我试着像这样@Override protected void onDraw(Canvas Canvas){//TODO自动生成的方法stub super.onDraw(Canvas);Canvas.drawBitmap(BackGrnd,(Canvas.getWidth()/2),0,null);Canvas.drawBitmap(BTank,10200,null);}但是现在坦克在左边,画布在右边只是部分显示