Estilos contextuales de la barra de acciones

Estoy buscando información de estilo en la barra de acción contextual (CAB). Solo necesito cambiar el color del texto de hecho …

Resultado de la barra de acciones contextual

Como puede ver en lo anterior, esto está utilizando el tema estándar Theme.Holo.Light.DarkActionBar , ¡así que solo necesito establecer el color del texto en blanco!

¿Alguien puede señalarme en la dirección correcta?

Para cambiar el color / etc del texto en una barra de acción contextual:

public boolean onCreateActionMode(ActionMode mode, Menu menu) { //mode.setTitle("Contextual Action Bar"); (replace this call) TextView tv= (TextView)getLayoutInflater().inflate(R.layout.contextual_title, null); tv.setText("Contextual Action Bar"); mode.setCustomView(tv); 

donde layout / contextual_title.xml contiene un solo TextView con el color / tamaño / estilo deseado, etc.

De hecho, casi todo en una barra de acción contextual se puede diseñar. El único problema es que la búsqueda de la palabra ‘contextual’ no lleva a ninguna parte útil. Las características de estilo relevantes se llaman “actionMode …”. Aquí hay algunos que usé (definidos en mi Tema).

 @drawable/check @drawable/ic_menu_cut_holo_dark @drawable/ic_menu_copy_holo_dark @drawable/ic_menu_paste_holo_dark @drawable/ic_menu_selectall_holo_dark @drawable/contextual @style/MyCloseButton  @null @drawable/bar_selector @drawable/bar_selector    

Puede configurar fácilmente sus propios icons de cortar / pegar / copiar / seleccionar de edición de texto, el fondo de la barra y el fondo del icono que cambia de color cuando presiona los icons (bar_selector de arriba). Los icons son ImageViews, no botones, y los id de edición (y el fondo pressable) se adjuntan al elemento primario de ImageView (uno principal por vista) que es un tipo ‘interno’.

Nunca está claro qué sucede en los estilos: encontré donde seleccionableItemBackground estaba en la plataforma Themes.xml, y copié y modifiqué el dibujable señalado.

Publiqué un comentario a mi propia pregunta, y esto es en realidad un error en la versión de Android que estaba usando (Probablemente una versión anterior de 4.0)

Este es el error descrito: http://code.google.com/p/android/issues/detail?id=26008

Si está iniciando manualmente el modo de acción contextual, puede llamar a setTheme () con un nuevo tema antes de iniciarlo (tal vez Theme.AppCompat.Light.DarkActionBar si está tratando de evitar el problema de texto negro sobre negro). Esto no afectará el tema de la actividad actual si ya ha configurado la vista de contenido de la actividad.

 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.my_activity_layout); // these lines can occur anywhere so long as you've already // called "setContentView()" on the activity. The theme // you set here will apply to the action mode, but not to // the activity. setTheme(R.style.Theme_AppCompat_Light_DarkActionBar); startSupportActionMode(myActionModeCallback); } 

funciona ahora, pero debe ingresarlo en values ​​/ styles.xml (no values-v # / styles.xml) e ingresarlo en general (etiqueta no específica de API)