Android - Problemas new Handler().post()

 
Vista:
sin imagen de perfil

Problemas new Handler().post()

Publicado por karrax (9 intervenciones) el 10/01/2016 12:13:27
Hola:

Estoy intentando cambiar el color de fondo del menu y para ello he encontrado el siguiente codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
protected void setMenuBackground(){
        // Log.d(TAG, "Enterting setMenuBackGround");
        getLayoutInflater().setFactory( new Editable.Factory() {
            public View onCreateView(String name, Context context, AttributeSet attrs) {
                if ( name.equalsIgnoreCase( "com.android.internal.view.menu.IconMenuItemView" ) ) {
                    try { // Ask our inflater to create the view
                        LayoutInflater f = getLayoutInflater();
                        final View view = f.createView( name, null, attrs );
                        /* The background gets refreshed each time a new item is added the options menu.
                        * So each time Android applies the default background we need to set our own
                        * background. This is done using a thread giving the background change as runnable
                        * object */
                       new Handler().post( new Runnable() {
                            public void run () {
                                // sets the background color
                                view.setBackgroundColor(Color.parseColor("#6296be"));
                                // sets the text color
                                ((TextView) view).setTextColor(Color.WHITE);
                                // sets the text size
                                ((TextView) view).setTextSize(18);
                            }
                        } );
                        return view;
                    }
                    catch ( InflateException e ) {}
                    catch ( ClassNotFoundException e ) {}
                }
                return null;
            }});
    }

En este codigo me sale un error en la parte del
1
new Handler().post(...
.

¿Cual puede ser el problema?

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 40
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

Problemas new Handler().post()

Publicado por Juan R. (16 intervenciones) el 12/01/2016 16:30:06
Buenas karrax

Si posteas cual es el error igual es más fácil detectarlo, aunque siendo Java lo mismo es que en la declaración de la línea que tienes el error es que no haces la declaración bien. Piensa en cómo lo harías en Java y lo mismo lo ves tú ya.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Problemas new Handler().post()

Publicado por karrax (9 intervenciones) el 12/01/2016 18:26:07
El problema viene cuando intento arreglar el problema y el propio android studio me dice que cree el metodo post(), pero claro, en todos los ejemplos que he visto sobre la creacion de dialogs personalizados lo hacen de esta manera, con lo cual deberia de dar bien.

Aunque me ponga a crear el metodo no se que deberia meter dentro del mismo. Creeme lo he intentado.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar