Thanks Kostya,

it looks like Widget.TextView.PopupMenu leads to 
textColorPrimaryDisableOnly.  If I try to read the value of this using the 
code:

TypedValue value = new TypedValue();
>
> getTheme().resolveAttribute(android.R.attr.textColorPrimaryDisableOnly, 
>> value, true);
>
>
>> int menuTextColor = getResources().getColor(value.resourceId);
>
>
I get the same value if I try a Samsung phone or an HTC phone (which have 
white and black option menu backgrounds).

I think the menu_background_fill_parent_width leads to a 9-patch png and 
I'm not sure which pixel to pull out of it and how to do that in order to 
read its color.


On Thursday, August 2, 2012 4:35:16 PM UTC-4, Kostya Vasilyev wrote:
>
> Take look in the platform's styles.xml and themes.xml.
>
> These sound somewhat promising:
>
>     <style name="Widget.TextView.PopupMenu">
>         <item name="android:clickable">true</item>
>         <item 
> name="android:textAppearance">@style/TextAppearance.Widget.TextView.PopupMenu</item>
>     </style>
>
>     <style name="Widget.PopupMenu" parent="Widget.ListPopupWindow">
>     </style>
>
> Looking in PhoneWindow.java (in the framework, under base/policy/src/...) 
> should be useful too - the "legacy" (pre-action bar) menu implementation is 
> here.
>
> And.... I just looked there myself, and it looks like the code uses this 
> attribute from the current theme:
>
>         <item 
> name="panelFullBackground">@android:drawable/menu_background_fill_parent_width</item>
>
> ... and so it makes sense that this attribute has the same value (as 
> above) in the legacy and both Holo themes (I've got 4.1.1 sources open 
> right now).
>
> -- K
>
> 2012/8/3 Spiral123
>
>> Hi all...
>>
>> Scratching my head here, need some help.
>>
>> I'm trying to read the option menu text color for the running device. 
>>  I'm not interested in trying to override the system menu behavior or 
>> anything funky, my theory is that if I know what color the text is (or the 
>> menu item background) then I will be able to display a custom dark or light 
>> menu icon set for my options depending on how the manufacturer has themed 
>> the option menu on their particular device.
>>
>> I don't mind if I need to look internally to source variables as I'm only 
>> interested in getting this for the 2.2 and 2.3 platforms: 2.1 and below is 
>> not targeted and I'm not interested in displaying icons in the 3.0 overflow 
>> menu.  If I know how to get the value I can make sure that my code won't 
>> break regardless of platform.
>>
>> Anyone been down this road before?
>>
>> Nick
>>
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Android Developers" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/android-developers?hl=en
>
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to