現在開発中のアプリケーションでは、さまざまなアクティビティのレイアウトをユーザーのAndroid APIレベルに合わせる必要があります。AndroidプラットフォームまたはAPIレベルへのレイアウトの変更
これを行う方法はありますか?
現在開発中のアプリケーションでは、さまざまなアクティビティのレイアウトをユーザーのAndroid APIレベルに合わせる必要があります。AndroidプラットフォームまたはAPIレベルへのレイアウトの変更
これを行う方法はありますか?
デバイス上で使用できるAPIのバージョンに応じて異なるレイアウトが表示されている場合は、configuration qualifiersを使用します。 alternative resourcesの詳細も記載されています。 vN
は、APIレベルであるように
res/layout/mylayout.xml (Default)
res/layout-v4/mylayout.xml (Android 1.6)
res/layout-v11/mylayout.xml (Android 3.0)
をして、:
それを行うための最も基本的な方法は、次のようにフォーマットし、使用する各APIレベル、のレイアウトフォルダを作成することです。特定のAPIレベルはon this pageです。
既にプラットフォーム・レベルのそれぞれについて、描画可能なリソースを持っている場合は、あなたがhttp://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources
具体的には、表に「プラットフォームバージョン(APIレベル)」の行を見て2
で提供された情報を使用することができますAndrew Koester氏は、異なるバージョンのフォルダを使用できると言いましたが、これはデフォルトのレイアウトに戻らないため、これは多くの作業であることがわかりました。 layout-v14を使用した場合は動作しますが、14以降のapiもこのレイアウトを持ち、別のレイアウト-vを使用する必要がありますか?それをもう一度上書きする。それはあなたのやることに依存しますが、多くのことをプログラマチックに行うと驚くべきことが見つかった場合:
if(Build.VERSION.SDK_INT == Build.VERSION_CODES.ICE_CREAM_SANDWICH || Build.VERSION.SDK_INT == Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1){
//ex. if ics is met then do this
}else{
//if api is not ics then do this
}
この仕事はかなりうまいです! – Atheh
私は上記の3つのファイルしか持っていませんでしたが、私はGBデバイスを使用していますが、どのファイルを使用するのですか? (レイアウト-v4またはレイアウト)?プラットフォームごとに異なるフォルダを作成する必要がありますか?私はGBからのサポートを予定しています –
@FredericYesidPeñaSánchezそれは、次に最も一致するレイアウトに戻ります。したがって、res/layoutは常に最後にマッチして必要になりますが、それ以外は任意です。それぞれ異なるプラットフォームが必要な場合を除き、プラットフォームごとにフォルダは必要ありません。 – Jess