2012-04-04 12 views
5

tengo la siguiente clase
Añadir botón en la costumbre Vista en Android

public class GameActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     View gameView = new GameView(this); 
     setContentView(gameView); 
    } 
} 


y ahora me gustaría añadir un botón a mi GameView clase.

public GameView(Context context) { 
     super(context); 
// Code ... 
} 

necesito este botón durante mi juego, por lo que debe ser alywas delante de todos los demás lienzo estoy dibujando.
¿Cómo puedo hacer eso?

+0

¿Dónde está tu botón? en la actividad o quieres crear uno nuevo? – pleerock

Respuesta

1

¿Desea crear un nuevo botón?

Button b = new Button(context); 
b.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
            LayoutParams.WRAP_CONTENT)); 

gameView.addView(b); 

Uso ViewGroupGameView como padres insted de vista simple

ViewGroup gameView = new GameView(this); 


public class GameView extends ViewGroup { //... 
0
View gameView = new GameView(this); 

reemplazar la línea de arriba abajo por la línea ::

View gameView = new GameView(this).createView(); 

y ahora en la vista del juego con CreateView botón y etc.

public class GameView extends View { 
    private Activity _activity; 
    public GameView (Activity _activity) { 
     super(_activity); 
     // TODO Auto-generated constructor stub 
     this._activity = _activity; 
    } 
public View createView(){ 
     LinearLayout l = new LinearLayout(_activity); 
     l.setOrientation(LinearLayout.VERTICAL); 
     Button btn = new Button(_activity); 
     btn.setId(1); 
      btn.setText("btn"+(i+1)); 
     l.addView(btn); 
     return l; 
    } 
} 

prueba este código de trabajo :::

Cuestiones relacionadas