¿Cómo puedo forzar que la barra de acción esté en la parte inferior de ICS?

Ice Cream Sandwich (Android 4.0) agrega la opción de tener la Action Bar en la parte inferior de la pantalla en los teléfonos, y eso es algo que me encantaría tener en una aplicación mía. Los documentos mencionan uiOptions="splitActionBarWhenNarrow" para cuando desee algo, es decir, tabs, en la parte superior y accesos directos de la Action Bar en la parte inferior. Intenté agregar la línea en el manifiesto de la aplicación, como se describe en los documentos, pero hasta ahora no lo he conseguido.

Aquí hay un ejemplo:

enter image description here

Además, noté que en mi Galaxy Nexus, que ejecuta ICS, la aplicación de mensajería tiene la Action Bar la parte inferior y nada más que el título en la parte superior, por lo que debe ser posible obligar a la Action Bar a estar en la parte inferior.

¿Algunas ideas?

Intenté agregar la línea en el manifiesto de la aplicación, como se describe en los documentos, pero hasta ahora no lo he conseguido.

Me funcionó en este proyecto de muestra . Aquí está el manifiesto:

              

Además, noté que en mi Galaxy Nexus, que ejecuta ICS, la aplicación de mensajería tiene la barra de acción en la parte inferior y nada más que el título en la parte superior, por lo que debe ser posible obligar a la barra de acción a estar en la parte inferior.

Si se refiere a la lista de conversaciones, esa es la ActionBar de ActionBar en la parte superior e inferior, usando splitActionBarWhenNarrow y el siguiente código de configuración:

 private void setupActionBar() { ActionBar actionBar = getActionBar(); ViewGroup v = (ViewGroup)LayoutInflater.from(this) .inflate(R.layout.conversation_list_actionbar, null); actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM, ActionBar.DISPLAY_SHOW_CUSTOM); actionBar.setCustomView(v, new ActionBar.LayoutParams(ActionBar.LayoutParams.WRAP_CONTENT, ActionBar.LayoutParams.WRAP_CONTENT, Gravity.CENTER_VERTICAL | Gravity.RIGHT)); mUnreadConvCount = (TextView)v.findViewById(R.id.unread_conv_count); } 

Estoy usando ActionBarSherlock y tuve un problema similar. Lo resolví poniendo android:uiOptions="splitActionBarWhenNarrow" dentro de la etiqueta , en lugar de la etiqueta .

Por ejemplo, esto funcionó:

  

y esto no funcionó

  

Editar aquí está la imagen :). InstaGram ActionBar + barra inferior

de nuevo con mejores resultados :). Lo primero que debe hacer es crear un nombre de diseño, header.xml

          

después de eso ve a tu clase MainActivity.class y crea este método.

  private void setupActionBar() { ActionBar actionBar = getActionBar(); //actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); ViewGroup v = (ViewGroup)LayoutInflater.from(this) .inflate(R.layout.header, null); actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM, ActionBar.DISPLAY_SHOW_CUSTOM); actionBar.setCustomView(v, new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.WRAP_CONTENT, Gravity.CENTER_VERTICAL | Gravity.RIGHT)); } 

agregar setupActionBar(); a su actividad onCreate y ejecute su aplicación :).

ahora tiene ActionBar personalizado con divisores e imágenes PS, el divisor está definido en el diseño como un fondo de imagen :).

Bueno, no puedes obligar a permanecer en la parte inferior de las tabletas, pero si lo haces, puedes hacerlo a través del manifiesto. pero puedes hacer algo es similar a la barra inferior y superior. En este ejemplo, le mostraré cómo usar merge para hacerlo fácilmente sin la necesidad de usar android ActionBar.

Lo primero que debe crear es su main_activity.xml en mi caso el main_activity.xml solo contiene ImageView en RelativeLayout. aquí está el código.

         

como se puede ver en el código anterior, hay dos fusiones que puse dentro de main_activity.xml definido al final y uno definido en la parte superior. aquí está la barra inferior falsa xml.

         

Estoy colocando un fondo fijo en LinearLayout y LinearLayout ImageView para onClicks.

y aquí está la barra superior. `

        

`

que también copiar pegar desde la barra inferior de arriba. simplemente cambie una cosa de android:layout_alignParentBottom="true" a android:layout_alignParentTop="true" y obtendrá una actionBar en la parte inferior y en la parte superior. en este caso, no necesitarás usar la Barra de acciones, así que te sugiero que uses Theme.Holo.NoActionBar

y aquí está el resultado de la imagen: – http://i.imgur.com/N8uKg6v.png

este es un proyecto en el que estoy trabajando ahora. hecho casi todo, pero aún luchando con el diseño. Espero que mi respuesta te beneficie. por favor vote la respuesta si la encuentra interesante.
atentamente. ~ Kosh

prueba esto…

 private View contentView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); contentView = getLayoutInflater().inflate(R.layout.activity_main, null); setContentView(contentView); LinearLayout layout = (LinearLayout) contentView.getParent().getParent(); View view = layout.getChildAt(0); layout.removeViewAt(0); layout.addView(view); }