我对Android布局有一个令人困惑的问题。当我只使用一个imageview时,图像将不可见,但如果我使用两个imageview(一个用于虚拟视图),我可以看到图像。我的问题仅存在于HVGA分辨率(320x480)。我认为这是因为我的图像分辨率。因为当我只使用number_one.png图像(124x133px)时它很好,但是如果我只使用result.png(597x90)我需要使用虚拟视图来查看它。这是代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:paddingLeft="@dimen/activity_horizontal_margin"
android:orientation="vertical"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity$PlaceholderFragment">
<!--<TextView android:text="@string/hello_world" android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content" />-->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center"
>
//if I use number_one.png(124x133) its fine
//result.png is 597x90
<ImageView
android:id="@+id/result"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="wrap_content"
android:src="@drawable/result"
/>
//dummy imageview (i dont need to use it if I use number_one.png
<ImageView
android:id="@+id/resultx"
android:layout_width="0dip"
android:layout_weight="0"
android:layout_height="wrap_content"
android:src="@drawable/number_one"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center"
>
<ImageView
android:id="@+id/number_one"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_one"
/>
<ImageView
android:id="@+id/number_two"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_two"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/number_three"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_three"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/add"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/add"
android:layout_marginLeft="10dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:gravity="center"
>
<ImageView
android:id="@+id/number_four"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_four"
/>
<ImageView
android:id="@+id/number_five"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_five"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/number_six"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_six"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/sub"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/sub"
android:layout_marginLeft="10dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:gravity="center"
android:layout_weight="1"
>
<ImageView
android:id="@+id/number_seven"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_seven"
/>
<ImageView
android:id="@+id/number_eight"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_eight"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/number_nine"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/number_nine"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/mul"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/mul"
android:layout_marginLeft="10dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:gravity="center"
android:layout_weight="1"
>
<ImageView
android:id="@+id/clear"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/clear"
/>
<ImageView
android:id="@+id/backspace"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/backspace"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/div"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/div"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/equal"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/equal"
android:layout_marginLeft="10dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:gravity="center"
android:layout_weight="1"
>
<ImageView
android:id="@+id/clearx"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/clear"
/>
<ImageView
android:id="@+id/backspacex"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/backspace"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/divx"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/div"
android:layout_marginLeft="10dp"
/>
<ImageView
android:id="@+id/equalx"
android:layout_width="0dip"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:src="@drawable/equal"
android:layout_marginLeft="10dp"
/>
</LinearLayout>
</LinearLayout>
抱歉我的英文。
编辑: 修复了将父layout_height更改为fill_parent
的问题答案 0 :(得分:2)
不要忘记在LinearLayout上定义方向
android:orientation="vertical"
或横向..