私は現在、Android携帯用に特別に作成されたアプリを持っています(レイアウトなどはすべて電話でうまく見えます)が、アプリのスキンを完全に変更して、まったく異なる感触を与えたいです。すべてのフラグメントをセットアップし、onCreate() のメイン GUI アクティビティに追加します。誰かがタブレットでアプリを使用している場合に、新しいフラグメントを作成して追加する方法はありますか? それとも、ゼロから始めて、モデル ファイルを再利用する必要がありますか?? 誰かが私にいくつかの優れたリソースを教えてくれたら、それは素晴らしいことです:)
3 に答える
良い質問 !
Android は、異なるレイアウトで同じフラグメントに取り組むようにうまく設計されています。私が通常行うことは、xml レイアウトにフラグメントを追加することです。そして、異なる解像度のフォルダーを使用します。それはかなりうまくいきます。
ただし、タブレットや電話用の特定のコードが必要な場合や、必要な場合は、より困難です。私は通常、トリックを使用します。res フォルダーにフォルダー values-xlarge を作成し、layout.xml ファイルを作成します。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="isTablet">true</bool>
</resources>
通常の値フォルダーで同じことを行います。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="isTablet">false</bool>
</resources>
次に、create メソッドで、特定のコードを作成できます。
if (getResources().getBoolean(R.bool.isTablet)) {
// specific tablet code
}
それが役立つことを願っています!
これはアプリの全体的なデザインと機能を対象としているため、質問が広すぎると思いますので、できるだけ一般的に答えようとします:)
コードを維持するのは悪夢になるので、タブレット専用の別のプロジェクトを作成しないでください。フラグメントを使用してプロジェクトを開始したので、タブレットにもフラグメントを使用する必要があります。ただし、現在のアプリをタブレット専用に再設計し、既存のフラグメントがタブレットでどのように表示され、動作するかを確認する必要があります。これは、一歩下がってアプリをもう一度見て、タブレットでどのように動作し、どのように見えるかを考える必要があることを意味します。
おそらくタブレット用に各フラグメントを再設計する必要がありますが、幸いなことに、おそらくレイアウト XML のみを変更する必要があります。
開発者セクションには、非常に役立つ記事がいくつかあります ( thisまたはthis )。また、Android 開発者のブログスポットには、この特定のトピック ( thisまたはthis ) に関する興味深い記事がいくつかありました。それらのそれぞれには、他の非常に役立つ記事へのリンクが含まれています。
幸運を!あなたはそれを必要とするでしょう...
より良いオプションは、hdpi サイズに従ってアプリケーションを設計するか、スタイル フォルダーで独自のスタイルを定義することです。