0

新しい Android デバイスには Switch のような新しい UI 要素を使用したいのですが、古いデバイスでは Button のような別のものを使用します。

レイアウトを作成しました

~/res/
   layout/main.xml
   layout-v14/main.xml

ボタンインlayout/main.xmlやスイッチインなどのさまざまな要素を持つlayout-v14/main.xml

しかし、次のような例外を取得せずに、アクティビティにさまざまな要素を追加するにはどうすればよいですか

Could not find class 'android.widget.Switch' ... 
4

3 に答える 3

1

Switchライブラリを試して、下位SwitchCompat互換性を持たせることができます。

于 2013-01-21T23:45:19.077 に答える
1

通常、その目的のためにプロジェクトの依存関係にサポート ライブラリを含めます。(http://developer.android.com/tools/extras/support-library.html)

その後、古いデバイスで新しいオブジェクト (フラグメントなど) を使用できます。

残念ながら、Switchその中にはありません...

于 2013-01-21T23:54:05.363 に答える
1

Build.VERSION.SDK_INT実行時にデバイスの API レベルを検査するために参照できます。そうすれば、次のように、ユーザーの API レベルに基づいて動作を変える条件付きコードを Java クラスに追加できます。

if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH ) {
  // Some code that requires API level 14+
} else {
  // Code that will run on lower API levels instead
}
于 2013-01-21T23:34:06.657 に答える