是否可以(或接受)在GridLayout的顶部填充区域顶部添加图像?
我有一个类似于计算器的GridLayout - 许多按钮,我有一个背景,使计算器看起来像是用金属制成的。我想做的就是在计算器上放置一个屏幕图像。
到目前为止,我已经使用了setPadding()方法,以便所有按钮都显示在屏幕下方,为屏幕留出足够的空间。我想我应该做的是在GridLayout中为屏幕创建一个新行,但我想知道:是否可以在该填充区域的GridLayout之上添加一个ImageView,或者这是一个很大的“不是不”和我应该创建一个新行吗?
.. buttons already added to gridLayout
gridLayout.setBackground( drawableMetalBackground );
ImageView iv = new ImageView( this ); // 'this' context should be gridLayout context??
iv.setBackground( npdScreen );
iv.layout( 0, 0, 300, 100 ); // Hardcode positions for example
gridLayout.addView( iv );
答案 0 :(得分:0)
我要说的正确解决方案是为ImageView使用单独的行。这就是我所做的,它对我有用。
答案 1 :(得分:0)
这是您可以使用的XML布局。 GridLayout
元素仅作为示例,但您可以将其用于更改计算器按钮的目的。
如您所见,LinearLayout
的方向设置为垂直,layout_width
和layout_height
设置为match_parent
,这意味着两者都会占用整个屏幕。此外,所有侧面都有一个衬垫,以保持与屏幕边缘的距离。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:orientation="vertical">
<ImageView
android:id="@+id/imageview"
android:layout_width="match_parent"
android:layout_height="80dp"
android:background="@drawable/Lighthouse"
android:layout_marginBottom="10dp"/>
<GridLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:columnCount="4"
android:orientation="horizontal" >
<Button
android:layout_column="3"
android:text="/" />
<Button android:text="1" />
<Button android:text="2" />
<Button android:text="3" />
<Button android:text="*" />
<Button android:text="4" />
<Button android:text="5" />
<Button android:text="6" />
<Button android:text="-" />
<Button android:text="7" />
<Button android:text="8" />
<Button android:text="9" />
<Button
android:layout_gravity="fill"
android:layout_rowSpan="3"
android:text="+" />
<Button
android:layout_columnSpan="2"
android:layout_gravity="fill"
android:text="0" />
<Button android:text="00" />
<Button
android:layout_columnSpan="3"
android:layout_gravity="fill"
android:text="=" />
</GridLayout>
这是此XML布局的最终结果。 ImageView
上的图像背景只是我放在可绘制文件夹上的简单图像。
如果您想了解有关如何将GridView
与自动调整大小的图片一起使用的更多信息,我已经制作了相关的教程。当然,你可以适应你的情况。 Here is the link to the post
希望对您有所帮助。