我有一个menucreen XML。当我打开项目宽屏时它不适应所有屏幕尺寸。我怎样才能克服这个问题。
当我想添加关于这个问题的图片时,我想我需要10个代表。点:))
有人可以帮助我吗?
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/samsun"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:text="@string/samsun"
android:textColor="#FFFF" />
<Button
android:id="@+id/trabzon"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:text="@string/trabzon"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/adana"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:text="@string/adana"
android:textColor="#FFFF" />
<Button
android:id="@+id/antalya"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:text="@string/antalya"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/izmir"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/izmir"
android:textColor="#FFFF" />
<Button
android:id="@+id/bursa"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/bursa"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/istanbul1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/gayrettepe"
android:textColor="#FFFF" />
<Button
android:id="@+id/istanbul2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/acibadem"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/erzurum"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/erzurum"
android:textColor="#FFFF" />
<Button
android:id="@+id/diyarbakir"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/diyarbakir"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/ankara"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/ankara"
android:textColor="#FFFF" />
<Button
android:id="@+id/kayseri"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/kayseri"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/alcatel"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/alcatel"
android:textColor="#FFFF" />
<Button
android:id="@+id/huawei"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/huawei"
android:textColor="#FFFF" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<Button
android:id="@+id/backbone"
android:layout_width="fill_parent"
android:layout_height="150dp"
android:background="@drawable/selector"
android:padding="10dp"
android:text="@string/backbone"
android:textColor="#FFFF" />
</LinearLayout>
</LinearLayout>
答案 0 :(得分:1)
在android中,为了支持尽可能多的设备,您可以提供一个布局的多个定义。首先,您需要将这些文件夹添加到资源中,对于每个文件夹,您可以指定相同布局的不同xml文件,以满足您希望应用程序使用的设备屏幕。
以下是文件夹结构的示例:
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-small/my_layout.xml // layout for small screen size
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
res/layout/main_activity.xml // For handsets (smaller than 600dp available width)
res/layout-sw600dp/main_activity.xml // For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml // For 10” tablets (720dp wide and bigger)
(在应用清单中)
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>
有关支持多个屏幕的更多信息,我强烈建议您阅读有关它的Google文档。 Here是文档的链接。 http://developer.android.com/guide/practices/screens_support.html
答案 1 :(得分:0)
声明尺寸值 - 小,值 - 大,值 - xlarge等。
不要忘记在AndroidManifest.xml中声明支持屏幕
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>
获取更多信息,请http://developer.android.com/guide/practices/screens_support.html。
答案 2 :(得分:0)
在Android中,您必须根据屏幕尺寸在不同的不同绘图中设置图像,并根据屏幕尺寸进行布局。
res/layout/my_layout.xml(drawable also like layout) ---- default layout.
res/layout-layout-hdpi/my_layout.xml ---- layout for hdpi screen size
res/layout-layout-large-hdpi/my_layout.xml ---- layout for large hdpi screen size
res/layout-layout-mdpi/my_layout.xml ---- layout for mdpi screen size(normal tables also)
res/layout-layout-Xdpi/my_layout.xml ---- layout for Xhdpi screen Size(high resolution)
答案 3 :(得分:0)
You can proceed as following
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-small/my_layout.xml // layout for small screen size
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
res/layout/main_activity.xml # For handsets (smaller than 600dp available width)
res/layout-sw600dp/main_activity.xml # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml # For 10” tablets (720dp wide and bigger)
res/drawable-mdpi/my_icon.png // bitmap for medium density
res/drawable-hdpi/my_icon.png // bitmap for high density
res/drawable-xhdpi/my_icon.png // bitmap for extra high density
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>