请教关于怎么把TextView 控件放在中间
请问关于如何把TextView 控件放在中间
请问 xml布局 如下图,怎么把 “药品耗材分类” 置于中间呢? 现在的情况是 偏左了。
为什么android:layout_gravity="center" 不能置于中间呢?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FAFAFA"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/btn_back" />
<TextView
android:layout_height="35dp"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center"
android:id="@+id/drug">
</TextView>
</LinearLayout>
。。。。
。。。。(在这有一些显示的 icon)
</LinearLayout>
------解决思路----------------------
你应该使用:android:gravity="center"
------解决思路----------------------
android:layout_width="wrap_content"
改成android:layout_width="match_parent"
------解决思路----------------------
你布局用relativelayout最方便,imageview靠左,textview直接垂直居中,一个属性搞定。
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
>
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:src="@drawable/btn_back" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:id="@+id/drug">
</TextView>
</RelativeLayout>
------解决思路----------------------
最好imageview也加一个android:layout_centerVertical="true",这样,两个在同一水平线上对齐。
------解决思路----------------------
应该2楼是正解
------解决思路----------------------
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal" >这里加上属性gravity="center_vertical"
<TextView
android:layout_height="35dp"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center"
android:id="@+id/drug"> 设置了textSize的话改成android:layout_height="wrap_content"
------解决思路----------------------
这是应为你的Textiew的宽度属性是wrap_content,在没有设置宽度的情况下,设置layout_gravity属性是无效的,你可以尝试给TextView设置一个宽度,这个属性就会有效
------解决思路----------------------
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal"
android:gravity="center" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/btn_back"/>
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:id="@+id/drug">
</TextView>
</LinearLayout>
给LinearLayout添加android:gravity="center"
把TextView的高改成android:layout_height="wrap_content"
去掉TextView的android:layout_gravity="center"
这样上下左右都居中了
------解决思路----------------------
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:gravity="center_vertical"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/idp" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center_vertical"
android:id="@+id/drug">
</TextView>
</LinearLayout>
</LinearLayout>
效果是
------解决思路----------------------
你看是要调整哪些东西。
我做了一个例子,试过了,可以的。
<RelativeLayout
android:id="@+id/my_menu"
android:layout_width="fill_parent"
android:layout_height="match_parent"
>
<ImageButton
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:background="#00000000"
android:scaleType="fitXY"
android:src="@drawable/back"
/>
<Button
android:id="@+id/me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="#00000000"
android:text="我"
android:textColor="#ffff"
android:textSize="20sp" />
</RelativeLayout>
------解决思路----------------------
抱歉,之前理解错了你的想法
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/idp" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_centerInParent="true"
android:id="@+id/drug">
</TextView>
</RelativeLayout>
</LinearLayout>
这样就行了
请问 xml布局 如下图,怎么把 “药品耗材分类” 置于中间呢? 现在的情况是 偏左了。
为什么android:layout_gravity="center" 不能置于中间呢?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FAFAFA"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/btn_back" />
<TextView
android:layout_height="35dp"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center"
android:id="@+id/drug">
</TextView>
</LinearLayout>
。。。。
。。。。(在这有一些显示的 icon)
</LinearLayout>
------解决思路----------------------
你应该使用:android:gravity="center"
------解决思路----------------------
android:layout_width="wrap_content"
改成android:layout_width="match_parent"
------解决思路----------------------
你布局用relativelayout最方便,imageview靠左,textview直接垂直居中,一个属性搞定。
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
>
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:src="@drawable/btn_back" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:id="@+id/drug">
</TextView>
</RelativeLayout>
------解决思路----------------------
最好imageview也加一个android:layout_centerVertical="true",这样,两个在同一水平线上对齐。
------解决思路----------------------
应该2楼是正解
------解决思路----------------------
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal" >这里加上属性gravity="center_vertical"
<TextView
android:layout_height="35dp"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center"
android:id="@+id/drug"> 设置了textSize的话改成android:layout_height="wrap_content"
------解决思路----------------------
这是应为你的Textiew的宽度属性是wrap_content,在没有设置宽度的情况下,设置layout_gravity属性是无效的,你可以尝试给TextView设置一个宽度,这个属性就会有效
------解决思路----------------------
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal"
android:gravity="center" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/btn_back"/>
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:id="@+id/drug">
</TextView>
</LinearLayout>
给LinearLayout添加android:gravity="center"
把TextView的高改成android:layout_height="wrap_content"
去掉TextView的android:layout_gravity="center"
这样上下左右都居中了
------解决思路----------------------
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:gravity="center_vertical"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/idp" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center_vertical"
android:id="@+id/drug">
</TextView>
</LinearLayout>
</LinearLayout>
效果是
------解决思路----------------------
你布局用relativelayout最方便,imageview靠左,textview直接垂直居中,一个属性搞定。
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
>
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:src="@drawable/btn_back" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:id="@+id/drug">
</TextView>
</RelativeLayout>
@ dalor 谢谢您的回复,但是我按照你所说的,还是实现不了想要的效果,麻烦再确认下吧,谢啦
你看是要调整哪些东西。
我做了一个例子,试过了,可以的。
<RelativeLayout
android:id="@+id/my_menu"
android:layout_width="fill_parent"
android:layout_height="match_parent"
>
<ImageButton
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:background="#00000000"
android:scaleType="fitXY"
android:src="@drawable/back"
/>
<Button
android:id="@+id/me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="#00000000"
android:text="我"
android:textColor="#ffff"
android:textSize="20sp" />
</RelativeLayout>
------解决思路----------------------
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00"
android:orientation="horizontal" >这里加上属性gravity="center_vertical"
<TextView
android:layout_height="35dp"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_gravity="center"
android:id="@+id/drug"> 设置了textSize的话改成android:layout_height="wrap_content"
@pengguohua1988 谢谢您的 回复,按照您所说的 是得不到想要的结果的,麻烦再确认下吧,谢啦
抱歉,之前理解错了你的想法
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#CDAD00" >
<ImageView
android:id="@+id/imageview_back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/idp" />
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize = "20sp"
android:textColor ="#707070"
android:text="药品、耗材分类"
android:layout_centerInParent="true"
android:id="@+id/drug">
</TextView>
</RelativeLayout>
</LinearLayout>
这样就行了