2016-01-11 38 views
0

我是android开发新手。我设计了一个停车应用程序,但布局不响应所有移动设备。 我试图通过使用9patch png图像&通过采取不同的可绘制文件夹(hdpi,mdpi,xhdpi)来制作响应式图像按钮。但两者都不适用于大屏幕设备。如何使用android studio设计响应式图像按钮和布局?

这是一个示例XML文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@drawable/background" 
    > 
    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/exit" 
     android:layout_gravity="center_vertical" 
     android:background="@android:color/transparent" 
     android:src="@drawable/exit1" 
     android:onClick="on_Bexit" 
     android:layout_alignTop="@+id/home0" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" /> 
    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/home0" 
     android:layout_gravity="center_vertical" 
     android:background="@android:color/transparent" 
     android:src="@drawable/home1" 
     android:onClick="on_Bhome0" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 
    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/car" 
     android:layout_gravity="center_vertical" 
     android:background="@android:color/transparent" 
     android:src="@drawable/c4" 
     android:onClick="on_Bcar" 
     android:cropToPadding="true" 
     android:nestedScrollingEnabled="true" 
     android:layout_alignBottom="@+id/textView5" 
     android:layout_alignLeft="@+id/bike" 
     android:layout_alignStart="@+id/bike" /> 
    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/bike" 
     android:layout_gravity="center_vertical" 
     android:src="@drawable/b3" 
     android:background="@android:color/transparent" 
     android:onClick="on_Bbike" 
     android:layout_above="@+id/exit" 
     android:layout_centerHorizontal="true" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:text="ENTRY " 
     android:id="@+id/textView" 
     android:textColor="#8dacbe" 
     android:textStyle="bold" 
     android:textSize="35dp" 
     android:layout_above="@+id/car" 
     android:layout_toLeftOf="@+id/textView6" 
     android:layout_toStartOf="@+id/textView6" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/bike_count" 
     android:text="90" 
     android:textColor="#140441" 
     android:textSize="30dp" 
     android:textStyle="bold|italic" 
     android:layout_alignBottom="@+id/bike" 
     android:layout_toLeftOf="@+id/exit" 
     android:layout_toStartOf="@+id/exit"/> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/car_count" 
     android:text="120" 
     android:textStyle="bold|italic" 
     android:textColor="#140441" 
     android:textSize="30dp" 
     android:layout_alignBottom="@+id/car" 
     android:layout_alignRight="@+id/bike_count" 
     android:layout_alignEnd="@+id/bike_count" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:text="Large Text" 
     android:id="@+id/textView5" 
     android:visibility="invisible" 
     android:layout_centerVertical="true" 
     android:layout_centerHorizontal="true" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:id="@+id/T_areadis" 
     android:hint="Parking area id and name" 
     android:textColor="#8dacbe" 
     android:text="kharghar" 
     android:textSize="30dp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:text="PAGE" 
     android:id="@+id/textView6" 
     android:textColor="#005384" 
     android:textSize="40dp" 
     android:textAlignment="center" 
     android:fontFamily="@string/abc_action_bar_home_description" 
     android:textStyle="bold" 
     android:layout_alignTop="@+id/textView" 
     android:layout_toRightOf="@+id/car_count" 
     android:layout_toEndOf="@+id/car_count" /> 
</RelativeLayout> 

敬请帮助我。

+0

_ _ “但两者都是不工作的大屏幕设备。” - 以何种方式,他们不工作? – DaveyDaveDave

回答

0
  1. 大屏幕设备使用xxhdpi。

  2. 如何具有相等宽度

    <LinearLayout 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:orientation="vertical"> 
    
        <ImageButton 
         android:id="@+id/exit" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:scaleType="fitCenter" 
         android:layout_gravity="center_vertical" 
         android:background="@android:color/transparent" 
         android:onClick="on_Bexit" 
         android:src="@drawable/icon_login" /> 
    
        <TextView 
         android:id="@+id/textView" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:text="ENTRY " 
         android:textAppearance="?android:attr/textAppearanceLarge" 
         android:textColor="#8dacbe" 
         android:textSize="35dp" 
         android:textStyle="bold" /> 
    </LinearLayout> 
    
    <LinearLayout 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:orientation="vertical"> 
    
        <ImageButton 
         android:id="@+id/home0" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:scaleType="fitCenter" 
         android:layout_gravity="center_vertical" 
         android:background="@android:color/transparent" 
         android:onClick="on_Bhome0" 
         android:src="@drawable/icon_login" /> 
    
        <TextView 
         android:id="@+id/bike_count" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:text="90" 
         android:textColor="#140441" 
         android:textSize="30dp" 
         android:textStyle="bold|italic" /> 
    </LinearLayout> 
    
    <LinearLayout 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:orientation="vertical"> 
    
        <ImageButton 
         android:id="@+id/car" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:scaleType="fitCenter" 
         android:layout_gravity="center_vertical" 
         android:background="@android:color/transparent" 
         android:onClick="on_Bcar" 
         android:src="@drawable/icon_login" /> 
    
        <TextView 
         android:id="@+id/car_count" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:text="120" 
         android:textColor="#140441" 
         android:textSize="30dp" 
         android:textStyle="bold|italic" /> 
    </LinearLayout> 
    
    <LinearLayout 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:orientation="vertical"> 
    
        <ImageButton 
         android:id="@+id/bike" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:scaleType="fitCenter" 
         android:layout_gravity="center_vertical" 
         android:background="@android:color/transparent" 
         android:onClick="on_Bbike" 
         android:src="@drawable/icon_login" /> 
        <TextView 
         android:id="@+id/T_areadis" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:hint="Parking area id and name" 
         android:text="kharghar" 
         android:textAppearance="?android:attr/textAppearanceMedium" 
         android:textColor="#8dacbe" 
         android:textSize="30dp" /> 
    </LinearLayout>