アイスクリームサンドイッチは多くの新しいUIデザイン要素を導入しましたが、市場浸透率はまだ4%程度です。アプリケーションの将来性を保証し、Honeycomb / Ice Cream Sandwichで導入されたアクションバー、配色などのデザイン要素の一部を利用したい場合は、下位互換性をある程度維持するための最良の方法は何でしょうか。互換性?
3 に答える
@Ollie Cに同意しますが、Actionbar Sherlockライブラリを使用する以外に、追加するオプションは他にもあると思います。これは、ABSコミュニティに積極的に参加しており、幻想的に本当に便利で、すべてのUIアセットが含まれていることに同意します。必要。
APIレベルを通してUIコンポーネントの優雅な劣化を見ることができます。したがって、たとえば:
フォルダに作成して、values
次のようにスタイルを設定できます
<?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>
次に、Android 3.0以降のデバイスの場合、values-v11
フォルダーを作成します。
<?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>
また、4.0以降のデバイスの場合は、次を作成しますvalues-v14
。
<?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>
REF:http : //android-developers.blogspot.co.uk/2012/01/holo-everywhere.html、Holo.Lightテーマを使用して、ハニカム前のデバイスで「Light」にフォールバックする方法は?
このプロジェクトもあります:https ://github.com/ChristopheVersieux/HoloEverywhereそれはホロテーマを持ち込もうとしています。
ついに; Googleは、Android OSから直接参照するのではなく、下位互換性の問題を解決するためにSDKのUIコンポーネントを含めることを開発者に推奨しています。これはあなたの質問ではありませんが、ある程度の一貫性を提供するのに役立ちます。
これは非常に幅広いトピックです。答えは、使用しようとしている特定の要素によって異なります。
-ActionBarの場合:以前のバージョンでActionBarが必要な場合、ActionBarSherlockは、Androidサポートライブラリから拡張された人気のある無料のライブラリです。
-配色/テーマの場合:このSOスレッドで説明されているように、res / values/styles.xmlおよびres/values-v11 / styles.xml(たとえば、「myStyle」と呼ばれる)を作成し、スタイルごとに関連する親。V11の場合はおそらく「Theme.Holo」、もう一方の場合はおそらく「Theme.Dark」になります。テーマに必要なカスタマイズを追加します。マニフェストでそのカスタムテーマを参照すると、デバイスのプラットフォームバージョンに応じて適切なテーマが選択されます(values-v11フォルダーはHoneycomb以降に使用され、もう1つはGingerbread以下に使用されます)
-他のプラットフォーム機能については、 Android開発者ブログで説明されているように、プラットフォーム固有の機能を個別のクラスにカプセル化し、Build.VERSION.SDKの値に基づいてそれらにアクセスできます。
http://www.actionbarsherlock.com
この(無料の)ライブラリは素晴らしく、以前のAndroidバージョンで探しているものを提供します。