好吧,我制作的游戏使用了从SurfaceView
延伸的类来代表游戏画面,但是它可以与按钮一起使用,所以我定义了"按钮面板"在xml上然后添加" GameView"到LinearLayout,它包含所有的东西,以编程方式并带来"按钮面板"前面,就像这样:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LinearLayout rl1 = (LinearLayout)findViewById(R.id.rl1);
rl1.addView(new GameView(this));
SquareLayout sq1 = (SquareLayout)findViewById(R.id.square);
//the control buttons are in another custom layout called "SquareLayout"
sq1.bringToFront();
}
这里的问题是我希望包含游戏按钮(SquareLayout)的布局填充RelativeLayout高度的一半(活动设置为横向),我将RelativeLayout变为垂直LinearLayout ,添加另一个SquareLayout,并将权重的属性设置为1,它是这样的:
现在的问题是" bringToFront();"方法不适用于LinearLayout,所以我在添加游戏视图后无法修改按钮面板的z,所以我的问题是,是否有一种方法可以使按钮面板就像在图像上一样RelativeLayout或类似的方法,如" bringToFront()"适用于LinearLayout。
答案 0 :(得分:0)
尝试在LinearLayout http://developer.android.com/reference/android/view/ViewGroup.html#bringChildToFront(android.view.View)上调用方法bringChildToFront(View)
。该参数将是您要在其兄弟姐妹之上显示的视图。