Utilizando Android getIdentifier ()

He intentado esto:

r = Resources.getSystem().getIdentifier("ball_red","drawable","com.Juggle2");
Log.i("FindBall","R = "+r);

Y esto:

r = Resources.getSystem().getIdentifier("com.Juggle2:drawable/ball_red", null, null);

Pero 'r' siempre termina en cero.

Llamo a esta línea desde una clase de ayuda que no es una Actividad y no extiende nada, por lo que no puedo simplemente llamargetResources(), pero puedo pasarlo desde miSurfaceView.

Con el tiempo, quiero reemplazar"ball_red" Con una variable, pero lo primero es lo primero. Esto no está funcionando.

com.Juggle2 es de hecho mi nombre de paquete.drawable es elres carpeta en la que está, y, el nombre del archivo es de hechoball_red.

R.java dice:

        public static final int ball_red=0x7f020027;

Así que no estoy seguro de por qué no está funcionando.

Así que no puedo usar los recursos, debo pasar un contexto, y lo hago de esta manera: Dentro de aquí:

class Collection extends SurfaceView implements SurfaceHolder.Callback {

Estoy haciendo una nueva instancia de mi clase y la paso.getContext() como parámetro

Respuestas a la pregunta(3)

Su respuesta a la pregunta