2013-06-18 3 views
0

Я пытаюсь изменить цвет текста пункта меню в меню опций. Я читаю здесь много похожих вопросов и ответов, говорящих, что это невозможно через тему и стиль и только через код. Я также попробовал пример кода, и он не работал.изменить цвет текста пункта меню в меню опций

мне удается изменить цвет фона, используя эти темы атрибуты:

@ вытяжке/menu_hardkey_panel_holo_dark @ вытяжке/menu_hardkey_panel_holo_dark #ffffff #ffffff

, но я не могу сделать цвет текста изменить. Я видел ответ, предлагающий использовать android: itemTextAppearance, но это не сработало.

Я использую Android 4.0 SDK.

любая помощь будет очень признательна.

Спасибо, Gidi

ответ

0

Вы не можете изменить это речь идет по умолчанию в андроид API. Если вы вносите изменения, это не работает для другой версии Android-устройства.

0
@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.my_menu, menu); 
    getLayoutInflater().setFactory(new Factory() { 
     @Override 
     public View onCreateView(String name, Context context, AttributeSet attrs) { 
      if (name .equalsIgnoreCase(“com.android.internal.view.menu.IconMenuItemView”)) { 
       try{ 
        LayoutInflater f = getLayoutInflater(); 
        final View view = f.createView(name, null, attrs); 
        new Handler().post(new Runnable() { 
         public void run() { 
          // set the background drawable 
          view .setBackgroundResource(R.drawable.my_ac_menu_background); 

          // set the text color 
          ((TextView) view).setTextColor(Color.WHITE); 
         } 
        }); 
        return view; 
       } catch (InflateException e) { 
        } catch (ClassNotFoundException e) {} 
      } 
      return null; 
     } 
    }); 
    return super.onCreateOptionsMenu(menu); 
} 
+0

не могли бы вы помочь мне понять, что вы подразумеваете под меню.xml? – Sharas

+0

его xml-файл вашего меню опций. – Riser

+0

вот что я думал. но мое меню xml использует

, и когда я пытаюсь использовать ваш код, он дает мне ошибки. Благодаря! – Sharas

Смежные вопросы