Android 2.2 i.e API Nivel 8 tiene tabStripEnabled = "true" para TabWidget cómo lograr lo mismo en versiones anteriores de Android?tabStripEnabled para TabWidget en la API anterior
Respuesta
private void SetupTabs(TabHost tabHost) {
LinearLayout ll = (LinearLayout) tabHost.getChildAt(0);
TabWidget tw = (TabWidget) ll.getChildAt(0);
Field mBottomLeftStrip;
Field mBottomRightStrip;
try {
mBottomLeftStrip = tw.getClass().getDeclaredField("mBottomLeftStrip");
mBottomRightStrip = tw.getClass().getDeclaredField("mBottomRightStrip");
if (!mBottomLeftStrip.isAccessible()) {
mBottomLeftStrip.setAccessible(true);
}
if (!mBottomRightStrip.isAccessible()) {
mBottomRightStrip.setAccessible(true);
}
mBottomLeftStrip.set(tw, getResources().getDrawable(R.drawable.blank));
mBottomRightStrip.set(tw, getResources().getDrawable(R.drawable.blank));// blank is the name of the image in drawable folder
}
catch (java.lang.NoSuchFieldException e) {
// possibly 2.2
try {
Method stripEnabled = tw.getClass().getDeclaredMethod("setStripEnabled", boolean.class);
stripEnabled.invoke(tw, false);
}
catch (Exception e1) {
e1.printStackTrace();
}
}
catch (Exception e) {}
}
¡¡¡¡Muchas gracias!!!! – Eby
Esto no funcionó para mí. Lo probé con un emulador 2.1 y 2.2. ¿Hay algo más que deba considerar al usar este truco? Se ejecutó correctamente el código basado en el SDK actual, pero el borde inferior para el TabWidget se mantuvo. – dannyroa
Esto funcionó perfecto, algunas cosas a tener en cuenta, crear una imagen transparente y ponerla en blanco. Hice un ligero cambio comentando: LinearLayout ll = (LinearLayout) tabHost.getChildAt (0); TabWidget tw = (TabWidget) ll.getChildAt (0); y reemplazando con TabWidget tw = tabHost.getTabWidget(); – Fred
me hizo tan:
try {
Method setStripEnabled = tabWidget.getClass().getDeclaredMethod(
"setStripEnabled", boolean.class);
setStripEnabled.invoke(tabWidget, true);
Method setLeftStripDrawable = tabWidget.getClass()
.getDeclaredMethod("setLeftStripDrawable", int.class);
setLeftStripDrawable.invoke(tabWidget, R.drawable.tab_line);
Method setRightStripDrawable = tabWidget.getClass()
.getDeclaredMethod("setRightStripDrawable", int.class);
setRightStripDrawable.invoke(tabWidget, R.drawable.tab_line);
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
- 1. estilo personalizado para TabWidget
- 2. TabWidget Altura
- 3. android: orientation = "vertical" no funciona para TabWidget
- 4. Elegir Graph API o REST API anterior para la aplicación de Facebook
- 5. Android TabWidget in Light tema
- 6. No quiero iconos en mi TabWidget
- 7. Android tabHost y tabWidget icon issue
- 8. TabWidget color blanco en primer plano?
- 9. TabHost/TabWidget - Imagen de fondo de escala?
- 10. Subir video a API REST de Facebook anterior
- 11. ¿Cómo doy estilo a un TabWidget en Ice Cream Sandwich?
- 12. Controlador de navegación Botón Atrás para ir a la pantalla anterior a la pantalla anterior
- 13. ¿Cómo borrar la lista anterior en UIWebview en iPhone?
- 14. Rieles: registro anterior y siguiente de la consulta anterior
- 15. MySql utilizando la sintaxis correcta para la cláusula anterior
- 16. archivo de inclusión .php en la carpeta anterior
- 17. Volver a la revisión anterior en Bazar
- 18. Vista de calendario para Android GingerBread y anterior (API <11)
- 19. ¿Cómo obtener la URL anterior en JavaScript?
- 20. cómo instalar la versión anterior en TestFlight
- 21. Volver a la página anterior
- 22. python sobrescribir la línea anterior
- 23. Cómo obtener la URL anterior en django
- 24. ! función anterior en javascript?
- 25. Ocultar una pestaña agregada previamente a Qt TabWidget
- 26. volver a la página anterior
- 27. pestañas de intención android tabwidget actualizar cada hit
- 28. Django solicitud para encontrar referencia anterior
- 29. Cómo ejecutar la aplicación en la versión anterior de Simulator
- 30. expresión anterior en repl clojure
que había en las pestañas en la parte inferior de la pantalla, así que lo hice de la siguiente manera ... puse androide: layout_marginBottom = "- 10dip" mover el bottomStrip fuera de la pantalla pero quiero saber la forma exacta de hacerlo ... gracias –
amithgc