I am trying to find a way to override a non-public attribute of an android style, more specifically an atttribute named itemColor of the Widget.FragmentBreadCrumbs style. This style affects the text color of the breadcumb in a PreferenceActivity when a preference fragment is being displayed on the right pane for large screens. It is used by the class FragmentBreadCrumbs.
My application uses a custom theme that extends Theme.Holo.Light and the theme breaks on API 23 so I am trying to find a workaround. 
The aforementioned style sets a default value to itemColor of @null which is not overridden in the Holo theme while for example it is set to a valid value for the Material theme. As a result the title of the breadcrumb is not visible (see screenshot for API 19 and screenshot for API 23)
I guess what I am trying to do is to find a way that could change a private value of a theme similar to the way reflection can be used to modify the private field's value of a class. Alternatively the ContextThemeWrapper seems to be promising but I simple don't get how can I use it or even if it is applicable in my situtation.
What I need is that after FragmentBreadCrumbs class executes its constructor below the mTextColor attribute to not be @null (which I am guessing is 0) as is set by the Android theme configuration but to have a valid color value. 
Do you think this is possible?
public FragmentBreadCrumbs(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
    super(context, attrs, defStyleAttr, defStyleRes);
    final TypedArray a = context.obtainStyledAttributes(attrs,
            com.android.internal.R.styleable.FragmentBreadCrumbs, defStyleAttr, defStyleRes);
    mGravity = a.getInt(com.android.internal.R.styleable.FragmentBreadCrumbs_gravity,
            DEFAULT_GRAVITY);
    mLayoutResId = a.getResourceId(
            com.android.internal.R.styleable.FragmentBreadCrumbs_itemLayout,
            com.android.internal.R.layout.fragment_bread_crumb_item);
    /* This is the value needed to be overridden */
    mTextColor = a.getColor(
            com.android.internal.R.styleable.FragmentBreadCrumbs_itemColor,
            0);
    a.recycle();
}
 
    