DrawerLayout 内的 RelativeLayout 中的中心项目
Centre Item in RelativeLayout inside DrawerLayout
我有一个抽屉布局,其中包含主要 activity 的相对布局以及自定义应用程序栏库。我正在尝试将 placeNameDesc TextView 居中放置在屏幕中,但这并没有发生
XML布局代码:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:openDrawer="start">
<RelativeLayout 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"
xmlns:anroid="http://schemas.android.com/apk/res-auto"
tools:context=".PlaceDetails"
android:background="@mipmap/background">
<com.github.florent37.awesomebar.AwesomeBar
android:id="@+id/bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:elevation="4dp" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:layout_below="@+id/bar"
android:id="@+id/placeImage"/>
<TextView
android:id="@+id/imageCounter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeImage"
android:fontFamily="@font/montserrat"
android:layout_centerHorizontal="true"
android:textColor="@color/menuYellow" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/placeNameDesc"
android:fontFamily="@font/montserrat"
android:layout_centerInParent="true"
android:textSize="18sp"
android:text="Name:"
android:layout_below="@id/placeImage"
android:textColor="@color/menuYellow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeNameDesc"
android:fontFamily="@font/montserrat"
android:textSize="14sp"
android:layout_centerHorizontal="true"
android:textColor="@color/menuText"
android:id="@+id/placeName"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/placeAddressDesc"
android:fontFamily="@font/montserrat"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:textSize="18sp"
android:text="Address:"
android:layout_below="@+id/placeName"
android:textColor="@color/menuYellow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeAddressDesc"
android:fontFamily="@font/montserrat"
android:textSize="14sp"
android:layout_centerHorizontal="true"
android:textColor="@color/menuText"
android:id="@+id/placeAddress"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/placeRatingDesc"
android:fontFamily="@font/montserrat"
android:layout_marginTop="10dp"
android:textSize="18sp"
android:layout_centerHorizontal="true"
android:text="Google Rating:"
android:layout_below="@id/placeAddress"
android:textColor="@color/menuYellow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeRatingDesc"
android:fontFamily="@font/montserrat"
android:textSize="14sp"
android:layout_centerHorizontal="true"
android:textColor="@color/menuText"
android:id="@+id/placeRating"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/submitInstructions"
android:layout_centerHorizontal="true"
android:id="@+id/instructionsButton"
android:src="@drawable/instructionsbutton"
android:background="#00000000"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:id="@+id/submitInstructions"
android:layout_alignParentBottom="true"
android:src="@drawable/submitinstructionsbutton"
android:background="#00000000"/>
</RelativeLayout>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:menu="@menu/drawer_menu" />
</android.support.v4.widget.DrawerLayout>
我不确定 RelativeLayout 是否是此处使用的正确布局类型,非常感谢任何解决此问题的帮助。
您需要设置此属性android:layout_centerInParent="true"
并从其属性中删除 android:layout_below="@id/placeImage"
,因为此属性将其置于 placeImage
下方并且不允许其正确居中。
在此之后,您可能需要对其他视图进行其他更改。
您好 JimmyBoy 先生,您的布局中的问题是您为文本视图提供了一种锚点,以便与 layout_centerInParent
对齐。
提供 suc 标签 layout_below
或 layout_above
等将覆盖 layout_centerInParent
、layout_centerHorizontal
和 layout_centerVertial
您需要做的就是从 placeNameDesc
文本视图中删除 android:layout_below
。
我有一个抽屉布局,其中包含主要 activity 的相对布局以及自定义应用程序栏库。我正在尝试将 placeNameDesc TextView 居中放置在屏幕中,但这并没有发生
XML布局代码:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:openDrawer="start">
<RelativeLayout 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"
xmlns:anroid="http://schemas.android.com/apk/res-auto"
tools:context=".PlaceDetails"
android:background="@mipmap/background">
<com.github.florent37.awesomebar.AwesomeBar
android:id="@+id/bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:elevation="4dp" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:layout_below="@+id/bar"
android:id="@+id/placeImage"/>
<TextView
android:id="@+id/imageCounter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeImage"
android:fontFamily="@font/montserrat"
android:layout_centerHorizontal="true"
android:textColor="@color/menuYellow" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/placeNameDesc"
android:fontFamily="@font/montserrat"
android:layout_centerInParent="true"
android:textSize="18sp"
android:text="Name:"
android:layout_below="@id/placeImage"
android:textColor="@color/menuYellow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeNameDesc"
android:fontFamily="@font/montserrat"
android:textSize="14sp"
android:layout_centerHorizontal="true"
android:textColor="@color/menuText"
android:id="@+id/placeName"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/placeAddressDesc"
android:fontFamily="@font/montserrat"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:textSize="18sp"
android:text="Address:"
android:layout_below="@+id/placeName"
android:textColor="@color/menuYellow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeAddressDesc"
android:fontFamily="@font/montserrat"
android:textSize="14sp"
android:layout_centerHorizontal="true"
android:textColor="@color/menuText"
android:id="@+id/placeAddress"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/placeRatingDesc"
android:fontFamily="@font/montserrat"
android:layout_marginTop="10dp"
android:textSize="18sp"
android:layout_centerHorizontal="true"
android:text="Google Rating:"
android:layout_below="@id/placeAddress"
android:textColor="@color/menuYellow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/placeRatingDesc"
android:fontFamily="@font/montserrat"
android:textSize="14sp"
android:layout_centerHorizontal="true"
android:textColor="@color/menuText"
android:id="@+id/placeRating"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/submitInstructions"
android:layout_centerHorizontal="true"
android:id="@+id/instructionsButton"
android:src="@drawable/instructionsbutton"
android:background="#00000000"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:id="@+id/submitInstructions"
android:layout_alignParentBottom="true"
android:src="@drawable/submitinstructionsbutton"
android:background="#00000000"/>
</RelativeLayout>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:menu="@menu/drawer_menu" />
</android.support.v4.widget.DrawerLayout>
我不确定 RelativeLayout 是否是此处使用的正确布局类型,非常感谢任何解决此问题的帮助。
您需要设置此属性android:layout_centerInParent="true"
并从其属性中删除 android:layout_below="@id/placeImage"
,因为此属性将其置于 placeImage
下方并且不允许其正确居中。
在此之后,您可能需要对其他视图进行其他更改。
您好 JimmyBoy 先生,您的布局中的问题是您为文本视图提供了一种锚点,以便与 layout_centerInParent
对齐。
提供 suc 标签 layout_below
或 layout_above
等将覆盖 layout_centerInParent
、layout_centerHorizontal
和 layout_centerVertial
您需要做的就是从 placeNameDesc
文本视图中删除 android:layout_below
。