我有一个线性布局内的图像。图像的大小很小,因此它不会覆盖整个屏幕。我希望图像放在屏幕的中央。我使用了以下代码:
<LinearLayout
android:id="@+id/ll4"
android:layout_height="50dp"
android:layout_width="match_parent"
android:orientation="horizontal" >
<ImageView
android:id="@+id/exit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="exitApplication"
android:contentDescription="exit"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:src="@drawable/exitbutton" >
</ImageView>
</LinearLayout>
但我面临的问题是,如果我在图像的两侧水平点击任何地方,就会调用onClick
函数。我怎么能解决这个问题?
答案 0 :(得分:2)
将imageView
的宽度设为wrapcontent
并将gravity
设为linearLayout
尝试以下数据:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ll4"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:gravity="center_horizontal" >
<ImageView
android:id="@+id/exit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="exit"
android:onClick="exitApplication"
android:src="@drawable/dolphin1" />
</LinearLayout>
希望这有效
答案 1 :(得分:0)
如评论中所述,您的图像占据了屏幕的整个宽度。要解决此问题,您必须将其用于ImageView
:
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_centerInParent="true"
并使用RelativeLayout
作为主要布局。
答案 2 :(得分:0)
这就是你要找的东西:
LinearLayout
:
<LinearLayout
...
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="horizontal" >
布局应该(定期)填满屏幕。这就是我们将layout_height
和layout_width
属性设置为match_parent
的原因。
ImageView
:
<ImageView>
...
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
</ImageView>
ImageView
应具有特定的宽度大小或设置为wrap_content
,否则使用match_parent
将填充父级的宽度。由于我们在布局和图像之间有可用空间,因此layout_gravity
属性会将ImageView
置于布局内部,与布局的大小相同。
答案 3 :(得分:0)
Try this way,hope this will help you to solve your problem.
<LinearLayout
android:id="@+id/ll4"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:gravity="center">
<ImageView
android:id="@+id/exit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="exitApplication"
android:contentDescription="exit"
android:adjustViewBounds="true"
android:src="@drawable/exitbutton" >
</ImageView>
</LinearLayout>