0

Android用のアプリケーションを作成しましたが、画面サイズが異なる電話で動作するようにしたいと考えています。これは私のmain.xmlコードです:

 <?xmlversion="1.0"encoding="utf-8"?>
  <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical">

 <AbsoluteLayout
 android:id="@+id/absoluteLayout1"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_weight="1.11"
 android:background="@color/dRed">

<Button
 android:id="@+id/Button02"
android:layout_width="285dp"
android:layout_height="76dp"
android:layout_x="122dp"
android:layout_y="340dp"
android:background="@drawable/border"
android:text="Exit"
android:textColorHighlight="@color/white"
android:textSize="30dip"/>

<Button
android:id="@+id/Button01"
android:layout_width="285dp"
android:layout_height="76dp"
android:layout_x="122dp"
android:layout_y="250dp"
android:background="@drawable/border"
android:text="About!"
android:textColorHighlight="@color/white"
 android:textSize="30dip"/>

 <Button
 android:id="@+id/button1"
 android:layout_width="285dp"
 android:layout_height="76dp"
 android:layout_x="122dp"
 android:layout_y="159dp"
 android:background="@drawable/border"
 android:text="Play Game!"
 android:textColorHighlight="@color/white"
 android:textSize="30dip"/>

   <TextView
  android:id="@+id/textView1"
   android:layout_width="333dp"
   android:layout_height="93dp"
   android:layout_x="105dp"
   android:layout_y="26dp"
   android:text="Smily XO  !!!"
   android:textAppearance="?android:attr/textAppearanceLarge"
   android:textColor="@color/orange"
   android:textColorHighlight="@color/white"
   android:textSize="60dip"/>

 <ImageView
  android:id="@+id/imageView1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_x="291dp"
  android:layout_y="26dp"
  android:src="@drawable/nice"/>

   </AbsoluteLayout>

  </LinearLayout>

エミュレーターにはうまく収まりますが、電話の画面には合いません。Android には、さまざまな電話に自動的に適合させるコマンドはありますか? このリンクで Androidmanifest.xml 私の Android アプリは実際には画面を埋めません 次のコードを追加する必要があることがわかりましたが、このコードを正確にどこに書くかわかりません

android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>
4

3 に答える 3

0

マニフェスト ファイルで、アプリケーション タグの上に次のコードを使用します。

<supports-screens
        android:anyDensity="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true"
        android:xlargeScreens="true" />

その後<AbsoluteLayout/>、Android API から完全に廃止され、

小さい画面にはlayoutフォルダーを使用し、resources

layout-land横向きのフォルダを作成し、

タブレットと大画面の場合-->layout-large-hdpiリソースにフォルダーを作成し、

すべてのlayout.xmlファイルを作成したフォルダーにコピーすると、自動的に調整されます。

于 2013-09-11T14:24:29.133 に答える
0

まず第一に、絶対レイアウトは推奨されていないため使用しないでください。選択/必要に応じて、線形/相対レイアウトを使用できます。次に、すべての画面解像度で均一なルック アンド フィールを得るには、これを確認する必要があります。

layout-largelayout-xlargeなどのさまざまなレイアウト フォルダーを追加し、それに応じて xml をそれらのフォルダーに配置することができます。また、ハードコーディングされた高さと幅を使用するよりも、wrap-content、match-parent を使用する方が好ましいです。そうしないと、異なるレイアウト フォルダーにあるすべての xml ファイルに対して、特定のビューの高さ/幅を変更しなければならない場合があります。

于 2013-09-11T14:02:00.920 に答える