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

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)


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.