setTheme を使用して onCreate のアクティビティのテーマを変更しています (これはより信頼性が高いはずなので、super.onCreate() を呼び出す前でも行っています)。
背景色と前景色を変更するという意味で機能します。ただし、私のレイアウトには、textAppearanceLarge などのスタイルを使用する要素がいくつかあります。現在、Android の textAppearanceLarge は内部で textPrimaryColor を使用していますが、これは私のテーマではまだ変更されていません。
テーマでプライマリ テキストの色をオーバーライドしようとしましたが、うまくいかないようです。
テーマの重要な部分は次のとおりです。
<style name="Theme.MyApp.White">
<item name="android:background">@android:color/white</item>
<item name="android:textColor">#000000</item>
</style>
背景は白く、プレーンな TextViews は黒く表示されます...しかし、textAppearanceLarge を使用する TextViews は白く、非表示 (白地に白) です。
私はこのようなことを試しました:
<item name="android:ColorPrimary">#000000</item>
<item name="android:textColorPrimary">#000000</item>
<item name="android:attr/textColorPrimary">#000000</item>
しかし、それらのどれも何もしません。魔法のトリックは何ですか?