How to add a view to the top of a linear layout in code?

14,749

Solution 1

Use:

public void addView (View child, int index) Since: API Level 1

Adds a child view. If no layout parameters are already set on the child, the default parameters for this ViewGroup are set on the child. Parameters child the child view to add index the position at which to add the child See Also

So

yourLayout.addView(yourView, 0);

http://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View,%20int)

Solution 2

I was trying to do it as well, but using only LinearLayout it always added the view at the bottom, no matter which index I passed to addView.

I wrapped the LinearLayout in a RelativeLayout, then you do that:

relativeLayout.addView(adView);
adView.setId(View.generateViewId());
RelativeLayout.LayoutParams llParams = (RelativeLayout.LayoutParams)linearLayout.getLayoutParams();
llParams.addRule(RelativeLayout.BELOW, adView.getId());

That is working for me.

Share:
14,749
cody
Author by

cody

Updated on June 05, 2022

Comments

  • cody
    cody almost 2 years

    I need to add an admob adview to a linear layout in code but I need to insert it at the top of the layout, not the bottom.

    Is there a way to do this?