Holo.Lightテーマを使用し、ハニカム以前のデバイスで「Light」にフォールバックする方法とは?
2023-08-22 16:19:51
質問
私は
Holo.Light
テーマを使用し、それをサポートするデバイスでは通常の
Light
テーマにフォールバックします。
現時点では
Holo.Light
は 3.0+ でうまく動作しますが、古い API では単にデフォルトの「暗い」テーマに戻ってしまいます。スタイル継承を使用して、私が望むものを実現することは可能ですか?
どのように解決するのですか?
カスタムテーマを作成し、それをいくつかのディレクトリに保存して、最終的にこのテーマをアプリのデフォルトテーマとして設定する必要があります。
まず、valuesに以下のようなthemes.xmlを追加します。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyAppTheme" parent="@android:style/Theme.Light.NoTitleBar">
<!-- Any customizations for your app running on pre-3.0 devices here -->
</style>
</resources>
そして、resディレクトリに "values-v11" (Android 3.0+ ) という名前でディレクトリを作成し、以下のような themes.xml を配置します。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyAppTheme" parent="@android:style/Theme.Holo.Light">
<!-- Any customizations for your app running on 3.0+ devices here -->
</style>
</resources>
最後に、res ディレクトリに "values-v14" (Android 4.0+) という名前でディレクトリを作成し、themes.xml を作成します。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyAppTheme" parent="@android:style/Theme.DeviceDefault.Light.NoActionBar">
<!-- Any customizations for your app running on 4.0+ devices here -->
</style>
</resources>
DeviceDefault を使用すると、Android 4 用のカスタム テーマを作成したあらゆるメーカーのデバイス (HTC Samsung ...) で、アプリを常に完璧に表示できます。
編集: Samsung のインターフェイス (TouchWiz) はこの機能を尊重しておらず、アプリは Samsung のデバイス上で非常に醜いものになります。その良いホロのテーマを置く :(
最後に、manifest.xml に
<application
...
android:theme="@style/MyAppTheme">
関連
-
[解決済み] 複数のデバイスを接続しているときにADB Shellを使用するには?error: more than one device and emulator "で失敗します。
-
[解決済み】android:fontFamilyの有効な値とそのマッピングは?
-
[解決済み] RecyclerView.Stateを使って、RecyclerViewのスクロール位置を保存するには?
-
[解決済み] AndroidにおけるViewPager2の適切な実装
-
[解決済み] アンドロイドフラグメント onRestoreInstanceState
-
[解決済み] 「KotlinとAndroidで「パラメータTを推測するのに十分な情報がありません。
-
[解決済み] EclipseのAndroidプロジェクトにライブラリ/JARを追加する
-
[解決済み] APKが署名済みかデバッグビルドかを確認するには?
-
[解決済み] アンドロイドのdatepickerダイアログで最大の日付を設定するには?
-
[解決済み] 実行に失敗しました app:processDebugResources Android Studio
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] SDカードからファイルを削除する方法を教えてください。
-
[解決済み] Android Webview - キャッシュを完全に削除する
-
[解決済み] Androidのソースコードにある@hideの意味とは?
-
[解決済み] 「KotlinとAndroidで「パラメータTを推測するのに十分な情報がありません。
-
[解決済み] Androidのadb logcatでTAG名で特定のメッセージを除外する方法は?
-
[解決済み] onCreate(Bundle savedInstanceState)とは?
-
[解決済み] ArrayList<MyCustomClass>をJSONArrayに変換する。
-
[解決済み] EditTextをReadOnlyにする
-
[解決済み] react nativeアプリのバージョン番号を更新する方法
-
[解決済み] Android Lintが翻訳されていない文字列を訴えないようにする。