Android中的包含布局已拉长

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中的包含布局已拉长相关的知识,希望对你有一定的参考价值。

获得示例代码,当它自己运行时工作正常。但是,当我将它添加到我自己的项目时,包括'include'的行:

 <LinearLayout
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"
android:background="@color/chat_background_color"
android:focusableInTouchMode="true"
android:orientation="vertical">

<StickyListHeadersListView
    android:id="@+id/messages_listview"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:transcriptMode="alwaysScroll"
    android:divider="@null"
    android:dividerHeight="0dp" />

<include layout="@layout/view_message_typing_status" />

<include layout="@layout/view_input_message_layout" />

<fragment
    android:id="@+id/emojicons_fragment"
    class="emoji.EmojiFragment"
    android:layout_width="match_parent"
    android:layout_height="250dp"
    tools:layout="@layout/fragment_emoji" /></LinearLayout>

延伸整个LinearLayout(屏幕)。在布局文件本身,一切看起来都很好,并且在RelativeLayout中与父级的顶部对齐。

为什么所有'包含'在我的项目中失败了,但是当我在原始项目中运行完全相同的布局时,它工作正常?

使用Android Studio。

他们自己的观点位于RelativeLayout,高度限制为50dp。

当我将50dp高度定义添加到包含它似乎很好,但我想知道这是如何工作来更好地理解问题的原因。

答案

有多个消息来源声明如果你不在覆盖语句中覆盖layout_widthlayout_height,那么其他的东西“将无效”。 Google developers并不认为它是一个问题,它总是感觉更像是一个解决方法而不是其他任何东西。但无论如何,如果你在include中声明宽度和高度,那么一切都应该按预期工作。

以上是关于Android中的包含布局已拉长的主要内容,如果未能解决你的问题,请参考以下文章

Android片段布局完成膨胀

如何在android中的地图片段内中心线性布局?

Android滚动问题

Android中每个片段的不同操作栏 - 最佳方法?

在片段中重新加载android视图

何时从android中的布局加载片段中的视图