¿Cómo usar layoutinflator para agregar vistas en tiempo de ejecución?

Tengo dos diseños: main.xml y buttonpanel.xml. En buttonpanel.xml, en la distribución lineal principal, configuro la gravedad en la parte inferior. Ahora estoy tratando de agregar el diseño del panel de botones usando el siguiente código.

setContentView(R.layout.main);
LinearLayout layout=(LinearLayout)findViewById(R.id.mainlinearlayout);
LayoutInflater inflater= (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view=inflater.inflate(R.layout.buttonpanel,null);
layout.addView(view);

Mi problema es que el panel se agrega a la parte superior, aunque he establecido la gravedad en la parte inferior en buttonpanel.xml. Si agrego buttonpanel.xml a main.xml usando include, funciona bien.

¿Alguien puede ayudarme con mi código?

Respuestas a la pregunta(2)

Su respuesta a la pregunta