为什么不将视图中的内容居中?
<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:orientation="horizontal" android:layout_gravity="center_vertical" tools:context=".MainActivity"> <EditText android:id="@+id/messageTextField" android:layout_weight="1" android:inputType="number" android:layout_width="0dp" android:layout_height="wrap_content" android:hint="@string/messageTextFieldPlaceholder" /> <Button android:id="@+id/sendButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/sendButtonTitle" android:onClick="sendMessage" /> </LinearLayout>
我看到一些关于垂直对齐的SO线程,我也看到了this,但我只有一个水平的LinearLayout,所以设置引力会从一侧到另一侧调整视图.
由于LinearLayout具有父级的维度,它是否不会填满整个屏幕?
不应该android:layout_gravity =“center_vertical”在它的维度的中心(垂直)对齐它的子视图?
这对我来说在我编写的代码中是有意义的,那么为什么android没有意义呢?
我是否需要另一个垂直的LinearLayout来保存其中的所有内容并使用android:layout_gravity =“center_vertical”?
解决方法
layout_gravity:
儿童可以提供的标准重力常数
它的父母.
儿童可以提供的标准重力常数
它的父母.
重力:
指定如何放置对象的内容
在x轴和y轴上,在对象本身内.
因此,如果您希望内容垂直居中,则需要引力而不是layout_gravity.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。