imageView看起来比它应该更大

时间:2015-01-09 15:43:16

标签: android android-layout imageview

任何人都可以告诉我为什么虽然drawable文件夹中的所有图像大小相同,但只有第二张图像显得更大?

下面是图片和代码。

图像 enter image description here

<?xml version="1.0" encoding="utf-8"?>
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tableLayout_1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="@dimen/padding_all"
android:weightSum="4">

<!-- First row -->
<TableRow 
    android:id="@+id/tableRow_1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:paddingStart="@dimen/padding_left"
    android:orientation="horizontal"
    android:layout_weight="1"
    android:weightSum="5">
    <ImageView 
        android:id="@+id/iv_speed"
        android:layout_width="30dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|start"
        android:contentDescription="@string/speed"
        android:src="@drawable/ic_speed"
        android:layout_weight="1"/>
    <TextView
        android:id="@+id/tv_speed_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginStart="@dimen/margine_start"
        android:text="@string/speed"
        android:layout_weight="1"/>
    <TextView 
        android:id="@+id/tv_speed_value"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginStart="@dimen/margine_start"
        android:text="@string/empty"
        android:layout_weight="3"/>
</TableRow>

<!-- second row -->
<TableRow 
    android:id="@+id/tableRow_2"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:paddingStart="@dimen/padding_left"
    android:layout_weight="1"
    android:weightSum="5">

    <ImageView
        android:id="@+id/iv_pedal"
        android:layout_width="30dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|start"
        android:layout_weight="1"
        android:contentDescription="@string/pedal"
        android:src="@drawable/ic_pedal" />

    <TextView 
        android:id="@+id/tv_pedal_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginStart="@dimen/margine_start"
        android:text="@string/pedal"
        android:layout_weight="1"/>
    <com.example.mqtt_designlayout_00.PedalView
        android:id="@+id/pedalView"
        android:layout_marginStart="60dp"
        android:layout_weight="3"/>
</TableRow>

<!-- Third row -->
<TableRow 
    android:id="@+id/tableRow_3"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:paddingStart="@dimen/padding_left"
    android:layout_marginTop="0dp"
    android:layout_weight="1"
    android:weightSum="5">
    <ImageView 
        android:id="@+id/iv_gear"
        android:layout_width="30dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|start"
        android:contentDescription="@string/gear"
        android:src="@drawable/ic_gear"
        android:layout_weight="1"/>
    <TextView 
        android:id="@+id/tv_gear_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginStart="@dimen/margine_start"
        android:text="@string/gear"
        android:layout_weight="1"/>
    <include
        android:id="@+id/gearView"
        android:layout_width="1dp"
        android:layout_height="30dp"
        android:layout_marginStart="1dp"
        layout="@layout/gear_display"
        android:layout_weight="3"/>
</TableRow>

<!-- Fourth row -->
<TableRow 
    android:id="@+id/tableRow_4"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:paddingStart="@dimen/padding_left"
    android:layout_weight="1"
    android:weightSum="5">
    <ImageView 
        android:id="@+id/iv_money"
        android:layout_width="30dp"
        android:layout_height="wrap_content"
        android:layout_gravity="top|start"
        android:contentDescription="@string/gear"
        android:src="@drawable/ic_money"
        android:layout_weight="1"/>
    <TextView 
        android:id="@+id/tv_money_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginStart="@dimen/margine_start"
        android:text="@string/money"
        android:layout_weight="1"/>
    <include
        android:id="@+id/gearMoney"
        android:layout_width="1dp"
        android:layout_height="30dp"
        android:layout_weight="3"
        layout="@layout/money_display"/> 
    </TableRow>
</TableLayout>

1 个答案:

答案 0 :(得分:0)

我在XML代码的第二个表行中看到错误:

<com.example.mqtt_designlayout_00.PedalView
        android:id="@+id/pedalView"
        android:layout_marginStart="60dp"
        android:layout_weight="3"/>

我认为每个XML布局元素都应该定义它的layout_width和layout_height,这不是问题吗?

根据您的XML,我认为您想要添加

    android:layout_width="1dp"
    android:layout_height="30dp"

到你的PedalView元素。 : - )