RelativeLayout 中的高度问题

Height issue in RelativeLayout

我在 Android 的 RelativeLayout 中遇到了一个奇怪的问题。如何将 TextView 高度设置为那些 ImageView 的中间?我已经尝试过 centerHorizo​​ntal=true 之类的方法,但没有用!

谢谢你帮我!

   <RelativeLayout
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_gravity="center_vertical"
      android:paddingLeft="@dimen/spacing_small"
      android:paddingRight="@dimen/spacing_small">

   <ImageButton 
        android:id="@+id/likeButton"
        android:padding="@dimen/spacing_xsmall"
        android:background="?selectableItemBackgroundBorderless"
        android:src="@drawable/ic_like"
        android:adjustViewBounds="true"
        android:contentDescription="@string/npl_title"
        android:scaleType="fitXY"
        android:layout_width="48dp"
        android:layout_height="48dp"/>
   <TextView 
       android:id="@+id/likeCounts"
       android:textColor="@color/colorPrimaryDark"
       android:layout_width="wrap_content"
       android:layout_height="48dp"
       android:layout_toRightOf="@id/likeButton"
       android:layout_toEndOf="@id/likeButton"
       android:singleLine="true"
       android:includeFontPadding="false"
       android:text="50 likes"/>
    <ImageButton
        android:id="@+id/commentButton"
        android:padding="@dimen/spacing_xsmall"
        android:background="?selectableItemBackgroundBorderless"
        android:src="@drawable/ic_comment"
        android:adjustViewBounds="true"
        android:scaleType="fitXY"
        android:layout_width="48dp"
        android:layout_toRightOf="@id/likeCounts"
        android:layout_toEndOf="@id/likeCounts"
        android:contentDescription="@string/npl_title"
        android:layout_height="48dp"/>
   <TextView 
       android:id="@+id/commentCounts"
       android:layout_width="wrap_content"
       android:layout_height="48dp"
       android:layout_gravity="center_vertical"
       android:singleLine="true"
       android:includeFontPadding="false"
       android:layout_toRightOf="@id/commentButton"
       android:layout_toEndOf="@id/commentButton"
       android:text="50 comments"/>
   <ImageButton
        android:id="@+id/shareButton"
        android:gravity="end"
        android:padding="@dimen/spacing_xsmall"
        android:background="?selectableItemBackgroundBorderless"
        android:adjustViewBounds="true"
        android:contentDescription="@string/npl_title"
        android:scaleType="fitXY"
        android:layout_width="48dp"
        android:layout_height="48dp"
       android:layout_toRightOf="@id/commentCounts"
       android:layout_toEndOf="@id/commentCounts"
       android:src="@drawable/ic_share" />
    </RelativeLayout>

尝试将 align_baseline 添加到 textview 并将其与 imageView 对齐

  <ImageButton 
        android:id="@+id/likeButton"
        android:padding="@dimen/spacing_xsmall"
        android:background="?selectableItemBackgroundBorderless"
        android:src="@drawable/ic_like"
        android:adjustViewBounds="true"
        android:contentDescription="@string/npl_title"
        android:scaleType="fitXY"
        android:layout_width="48dp"
        android:layout_height="48dp"/>
   <TextView 
       android:id="@+id/likeCounts"
       android:textColor="@color/colorPrimaryDark"
       android:layout_width="wrap_content"
       android:layout_height="48dp"
       android:layout_toRightOf="@id/likeButton"
       android:layout_toEndOf="@id/likeButton"
       android:singleLine="true"
       android:includeFontPadding="false"
    android:layout_alignBaseline="@id/likeButton"
       android:text="50 likes"/>

TextView的高度设置为wrap_content,然后将android:layout_centerVertical="true"设置为TextView

您正在使用 android:layout_gravity="center_vertical"

使用 layout_gravity = "center" 完全位于中心位置。顺便问一下,你说的是图片中的哪个文本视图?