我需要在代码中为线性布局添加一个admob adview,但我需要将它插入布局的顶部,而不是底部。
有办法做到这一点吗?
答案 0 :(得分:35)
使用:
public void addView(View child,int index)从:API Level 1
添加子视图。如果没有设置布局参数 child,在子级上设置此ViewGroup的默认参数。 参数child子视图添加索引的位置 添加孩子另请参阅
所以
yourLayout.addView(yourView, 0);
http://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View,%20int)
答案 1 :(得分:3)
我也尝试这样做,但只使用LinearLayout
它总是在底部添加视图,无论我index
传递给addView
。
我将LinearLayout
包裹在RelativeLayout
中,然后你就这样做了:
relativeLayout.addView(adView);
adView.setId(12345678);
RelativeLayout.LayoutParams llParams = (RelativeLayout.LayoutParams)linearLayout.getLayoutParams();
llParams.addRule(RelativeLayout.BELOW, adView.getId());
这对我有用。