Olá, Estou aprendendo sobre canvas agora e estou com um problema. Estou criando um joguinho e preciso colocar uma imagem como plano de fundo no jogo. Li algumas coisas na internet e tentei fazer mas quando abro a aplicação no lugar que deveria ter a imagem está tudo preto. Meu código:
Pista.java:
public class Pista extends SurfaceView implements Runnable{
Canvas canvas;
Bitmap imagemFundo;
SurfaceHolder surfaceHolder;
public Pista(Context context, AttributeSet attrs) {
super(context,attrs);
surfaceHolder = getHolder();
imagemFundo = BitmapFactory.decodeResource(getResources(), R.drawable.pista);
}
@Override
protected void onDraw(Canvas c){
canvas.drawBitmap(imagemFundo,0,0,null);
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.cea436.amanda.freeway.MainActivity">
<com.cea436.amanda.freeway.Pista
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}