知识为进步之母,而进步又为富强之源泉。这篇文章主要讲述Android,XML:gravity = top无法正常工作(截图)相关的知识,希望能为你提供帮助。
这是一个奇怪的:
我有这么简单的代码:
<
LinearLayout
android:orientation="vertical"
android:gravity="top"
android:layout_gravity="top"
android:layout_weight="600"
android:layout_width="0dp"
android:layout_height="match_parent">
<
ImageView
android:layout_gravity="top"
android:src="https://www.songbingjia.com/android/@drawable/button_category_adventure"
android:id="@+id/img_userpic_recview_comments"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<
/LinearLayout>
并收到这个结果:
文章图片
显然,imageview在其布局中是中心而不是在TOP上。为什么会这样?
这是完整的xml:
<
?xml version="1.0" encoding="utf-8"?>
<
LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="#ffffff"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="12dp" />
<
LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
LinearLayout
android:orientation="vertical"
android:layout_weight="50"
android:layout_width="0dp"
android:layout_height="match_parent" />
<
LinearLayout
android:orientation="vertical"
android:gravity="top"
android:layout_gravity="top"
android:layout_weight="600"
android:layout_width="0dp"
android:layout_height="match_parent">
<
ImageView
android:layout_marginTop="-10dp"
android:layout_gravity="top"
android:src="https://www.songbingjia.com/android/@drawable/button_category_adventure"
android:id="@+id/img_userpic_recview_comments"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<
/LinearLayout>
<
LinearLayout
android:orientation="vertical"
android:layout_weight="3634"
android:layout_width="0dp"
android:layout_height="match_parent">
<
LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
TextView
android:id="@+id/txt_username_recview_comments"
android:textColor="#000000"
android:text="USERNAME"
android:textSize="15sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<
TextView
android:id="@+id/txt_rankname_recview_comments"
android:textColor="#000000"
android:text="traveler"
android:textSize="10sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<
/LinearLayout>
<
LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
TextView
android:id="@+id/txt_comments_recview_comments"
android:textColor="#000000"
android:textSize="13sp"
android:text="Wow, that looks like it was so much fun and I don’t hate you at all for this! You look so pretty!! Right, this is actually me! HAHA! So, I guess I am the pretty one, am I not? ;
D"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="2dp"
android:paddingBottom="2dp" />
<
/LinearLayout>
<
LinearLayout
android:orientation="horizontal"
android:layout_weight="10"
android:layout_width="match_parent"
android:layout_height="0dp">
<
LinearLayout
android:orientation="vertical"
android:layout_weight="5"
android:layout_width="0dp"
android:layout_height="match_parent">
<
TextView
android:id="@+id/txt_date_recview_comments"
android:textColor="#000000"
android:text="01.01.2020"
android:textSize="11sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<
/LinearLayout>
<
LinearLayout
android:orientation="vertical"
android:gravity="right"
android:layout_weight="5"
android:layout_width="0dp"
android:layout_height="match_parent">
<
ImageView
android:id="@+id/img_dots_horizontal"
android:layout_gravity="center|right"
android:src="https://www.songbingjia.com/android/@drawable/general_btn_dots_horizontal"
android:background="@drawable/ripple"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
<
/LinearLayout>
<
/LinearLayout>
<
/LinearLayout>
<
LinearLayout
android:orientation="vertical"
android:layout_weight="536"
android:layout_width="0dp"
android:layout_height="match_parent" />
<
/LinearLayout>
<
/LinearLayout>
Thank you all so far for the help!
答案试试这个并调整你的上边距。
<
LinearLayout
android:orientation="vertical"
android:gravity="top"
android:layout_gravity="top"
android:layout_weight="600"
android:layout_width="0dp"
android:layout_height="match_parent">
<
ImageView
android:layout_gravity="top"
android:layout_marginTop="-20dp"
android:src="https://www.songbingjia.com/android/@drawable/button_category_adventure"
android:id="@+id/img_userpic_recview_comments"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<
/LinearLayout>
另一答案“显然,图像视图的布局是中心而不是TOP。为什么会发生这种情况?”
它不是居中的,它位于顶部,就像您在XML中定义的一样。
另一答案请注意一件事:
当
LinearLayout
有方向vertical
:儿童视图的
layout_gravity
可能是right, left,center,start,end
。因为你已经告诉LinearLayout
垂直绘制子视图,所以第一个孩子会自动在顶部。你不必指定顶部位置。当
LinearLayout
有方向horizontal
:Child View的layout_gravity可能是
top, bottom,center
。【Android,XML(gravity = top无法正常工作(截图))】对于你的问题,正如我在评论中提到的那样。请在预览中查看。我确信Image位于顶部,白色区域也是该Image的一部分。
推荐阅读
- 无法使用gradle 2.3.3向android添加bottomnavigation
- 经过多少内存消耗Android抛出OutOfMemoryException
- Android(为什么setVisibility(View.GONE);或setVisibility(View.INVISIBLE);不工作)
- 如何围绕Android LinearLayout创建边框()
- Fab按钮带有显示阴影的图标(Android 4.1)
- 如何使用Android自定义视图中的属性设置调整膨胀布局的大小()
- 在android studio中删除重构xml中的空格行
- 如何设置背景图片Android xml文件的透明度
- 开发人员犯的10个最常见的Bootstrap错误