首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >TextView垂直居中在RelativeLayout中不起作用

TextView垂直居中在RelativeLayout中不起作用
EN

Stack Overflow用户
提问于 2016-06-03 15:30:18
回答 2查看 890关注 0票数 -1

我遇到了"Location“TextView无法将"center_vertical”与内部包含微调器子对象的LinearLayout并排对齐的问题。CustomSpinner是从类旋转器派生的,用于处理自定义onItemSelected事件。

附件是预期结果与实际结果的XML代码和屏幕截图。

任何帮助都将不胜感激!

代码语言:javascript
复制
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF"
android:focusable="true"
android:focusableInTouchMode="true">

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#FFFFFF"
    android:paddingBottom="4dp"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    android:paddingTop="8dp">

    <TextView
        android:id="@+id/tvCheckStockStatus"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_marginBottom="6dp"
        android:text="Check Stock Status"
        android:textColor="@color/color_primary"
        android:textSize="15sp" />

    <TextView
        android:id="@+id/tvItemCode"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tvCheckStockStatus"
        android:layout_marginLeft="3dp"
        android:text="@string/sample_text"
        android:textColor="#000000"
        android:textSize="16sp"
        android:textStyle="bold"
        android:visibility="visible" />

    <EditText
        android:id="@+id/edDescription"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/ivRemark"
        android:layout_below="@+id/tvItemCode"
        android:layout_marginBottom="2dp"
        android:layout_toLeftOf="@+id/ivRemark"
        android:layout_weight="1"
        android:hint="@string/description"
        android:inputType="textCapWords"
        android:selectAllOnFocus="true"
        android:text=""
        android:textSize="17sp" />

    <ImageView
        android:id="@+id/ivRemark"
        android:layout_width="36dp"
        android:layout_height="36dp"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/tvItemCode"
        android:focusableInTouchMode="false"
        android:padding="2dp"
        android:src="@drawable/ic_action_remark"
        android:visibility="visible" />

    <TextView
        android:id="@+id/location"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/edDescription"
        android:layout_gravity="center_vertical"
        android:layout_weight="30"
        android:paddingRight="5dp"
        android:text="@string/location"
        android:textColor="#555555"
        android:textSize="15sp"
        android:visibility="visible"
        android:gravity="center_vertical|right"
        android:layout_alignWithParentIfMissing="false"
        android:allowUndo="false"
        android:layout_alignBottom="@+id/spLocationBlock" />

    <LinearLayout
        android:id="@+id/spLocationBlock"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#F5F5F5"
        android:orientation="vertical"
        android:visibility="visible"
        android:layout_alignParentRight="true"
        android:layout_toEndOf="@id/location"
        android:layout_below="@+id/edDescription"
        android:measureWithLargestChild="false">

        <widgets.CustomSpinner
            android:id="@+id/spLocation"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="8dp"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="4dp"
            android:layout_marginTop="8dp"
            android:visibility="visible" />
    </LinearLayout>
 </RelativeLayout>

预期结果

实际结果

EN

回答 2

Stack Overflow用户

发布于 2016-06-03 15:56:44

只需使用:

代码语言:javascript
复制
android:layout_centerInParent="true"

对于TextView

票数 0
EN

Stack Overflow用户

发布于 2016-06-03 16:03:10

更改android:layout_width="wrap_content"并添加android:layout_centerVertical="true"

请参见下面的代码。

代码语言:javascript
复制
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFFFFF"
    android:focusable="true"
    android:focusableInTouchMode="true">

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#FFFFFF"
        android:paddingBottom="4dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="8dp">

        <TextView
            android:id="@+id/tvCheckStockStatus"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginBottom="6dp"
            android:text="Check Stock Status"
            android:textColor="@color/color_primary"
            android:textSize="15sp" />

        <TextView
            android:id="@+id/tvItemCode"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/tvCheckStockStatus"
            android:layout_marginLeft="3dp"
            android:text="@string/sample_text"
            android:textColor="#000000"
            android:textSize="16sp"
            android:textStyle="bold"
            android:visibility="visible" />

        <EditText
            android:id="@+id/edDescription"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/ivRemark"
            android:layout_below="@+id/tvItemCode"
            android:layout_marginBottom="2dp"
            android:layout_toLeftOf="@+id/ivRemark"
            android:layout_weight="1"
            android:hint="@string/description"
            android:inputType="textCapWords"
            android:selectAllOnFocus="true"
            android:text=""
            android:textSize="17sp" />

        <ImageView
            android:id="@+id/ivRemark"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:layout_alignParentRight="true"
            android:layout_below="@+id/tvItemCode"
            android:focusableInTouchMode="false"
            android:padding="2dp"
            android:src="@drawable/ic_action_remark"
            android:visibility="visible" />

        <TextView
            android:id="@+id/location"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_below="@+id/edDescription"
            android:layout_gravity="center_vertical"
            android:layout_weight="30"
            android:paddingRight="5dp"
            android:text="@string/location"
            android:textColor="#555555"
            android:textSize="15sp"
            android:visibility="visible"
            android:gravity="center_vertical|right"
            android:layout_alignWithParentIfMissing="false"
            android:allowUndo="false"
            android:layout_alignBottom="@+id/spLocationBlock" />

        <LinearLayout
            android:id="@+id/spLocationBlock"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="#F5F5F5"
            android:orientation="vertical"
            android:visibility="visible"
            android:layout_alignParentRight="true"
            android:layout_toEndOf="@id/location"
            android:layout_toRightOf="@id/location"
            android:layout_below="@+id/edDescription"
            android:measureWithLargestChild="false">

            <widgets.CustomSpinner
                android:id="@+id/spLocation"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="4dp"
                android:layout_marginRight="4dp"
                android:layout_marginTop="8dp"
                android:visibility="visible" />
        </LinearLayout>
    </RelativeLayout>
</ScrollView>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37608493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档