Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android如何解决布局设计问题_Android_Android Layout_Android Fragments - Fatal编程技术网

android如何解决布局设计问题

android如何解决布局设计问题,android,android-layout,android-fragments,Android,Android Layout,Android Fragments,我尝试制作聊天应用程序。我在设计方面没有足够的经验。因此我遇到了一些问题。我的问题如下图所示: 和layout.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent"

我尝试制作聊天应用程序。我在设计方面没有足够的经验。因此我遇到了一些问题。我的问题如下图所示:

和layout.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/white"
tools:context=".MainActivity" >

<RelativeLayout
    android:id="@+id/navBar"
    android:layout_width="fill_parent"
    android:layout_height="50dp"
    android:background="#0d8ec1" >
    
    <ImageView 
        android:id="@+id/toImage"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:paddingLeft="3dp"
        android:background="@drawable/toimage"/>
    
    <TextView
        android:id="@+id/toName"
        android:layout_width="wrap_content"
        android:layout_height="25dp"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="5dp"
        android:textSize="18sp"
        android:textStyle="bold"
        android:fontFamily="sans-serif"
        android:textColor="#FFFFFF"
        android:text="Ergin" />

    <TextView
        android:id="@+id/lastSeen"
        android:layout_width="wrap_content"
        android:layout_height="18dp"
        android:layout_centerHorizontal="true"
        android:layout_below="@+id/toName"
        android:layout_marginBottom="3dp"
        android:textSize="12sp"
        android:textColor="#ffffff" />
        
</RelativeLayout>

<ListView
    android:id="@+id/list_message"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@+id/navBar"
    android:divider="@null"
    android:dividerHeight="0dp"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="50dip"
    android:transcriptMode="alwaysScroll"
    android:stackFromBottom="true" >
</ListView>


<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:weightSum="1"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingBottom="10dp" >

    <EditText
        android:id="@+id/txt_message"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="0.8"
        android:background="@drawable/edit_text"
        >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/btn_send"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.2"
        android:background="@android:drawable/ic_media_play" />


如何解决图片中的问题?请提前感谢。

使用编辑文本并在RelativeLayout中输入按钮 和 将两个项目的属性指定为

android:centerVertical="true"

xml中的3个更正。在上一次的
LinearLayout
中,您必须删除
paddingBotton
,并在
EditText
按钮中添加
android:layout\u gravity=“center\u vertical”

因此,最终结果应该是:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@android:color/white"
    tools:context=".MainActivity" >

    <RelativeLayout
        android:id="@+id/navBar"
        android:layout_width="fill_parent"
        android:layout_height="50dp"
        android:background="#0d8ec1" >

        <ImageView
            android:id="@+id/toImage"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:paddingLeft="3dp"
            android:background="@drawable/toimage"/>

        <TextView
            android:id="@+id/toName"
            android:layout_width="wrap_content"
            android:layout_height="25dp"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="5dp"
            android:textSize="18sp"
            android:textStyle="bold"
            android:fontFamily="sans-serif"
            android:textColor="#FFFFFF"
            android:text="Ergin" />

        <TextView
            android:id="@+id/lastSeen"
            android:layout_width="wrap_content"
            android:layout_height="18dp"
            android:layout_centerHorizontal="true"
            android:layout_below="@+id/toName"
            android:layout_marginBottom="3dp"
            android:textSize="12sp"
            android:textColor="#ffffff" />

    </RelativeLayout>

    <ListView
        android:id="@+id/list_message"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/navBar"
        android:divider="@null"
        android:dividerHeight="0dp"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="50dip"
        android:transcriptMode="alwaysScroll"
        android:stackFromBottom="true"
        android:layout_above="@+id/editTextButtonHoder">
    </ListView>


    <LinearLayout
        android:id="@+id/editTextButtonHoder"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:weightSum="1"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        >

        <EditText
            android:id="@+id/txt_message"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="0.8"
            android:layout_gravity="center_vertical"
            android:background="@drawable/edit_text"
            android:lines="3"
            android:minLines="3"
            >

            <requestFocus />
        </EditText>

        <Button
            android:id="@+id/btn_send"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.2"
            android:layout_gravity="center_vertical"
            android:background="@android:drawable/ic_media_play" />
    </LinearLayout>
    </RelativeLayout>

要浏览编辑文本,请查看以下内容:

<EditText
    android:inputType="textMultiLine" <!-- Multiline input -->
    android:lines="8" <!-- Total Lines prior display -->
    android:minLines="6" <!-- Minimum lines -->
    android:gravity="top|left" <!-- Cursor Position -->
    android:maxLines="10" <!-- Maximum Lines -->
    android:layout_height="wrap_content" <!-- Height determined by content -->
    android:layout_width="fill_parent" <!-- Fill entire width -->
    android:scrollbars="vertical" <!-- Vertical Scroll Bar -->
/>

android:minLines=“6”
android:gravity=“上|左”
android:maxLines=“10”
android:layout\u height=“包装内容”
android:layout\u width=“fill\u parent”
android:scrollbars=“垂直”
/>

您必须在EditText中定义最大行数,否则如果用户输入多行文本,它将与屏幕重叠。大多数聊天应用程序最多提供4行用户可以看到的信息。如何保留所有信息的列表(编辑文本和按钮)?谢谢伙计,这解决了我的中心问题。但我仍然有一个问题。edittext是骑在消息气泡上的。你可以让edittext的高度固定下来。并在listView中添加一个新标记。android:layout_over=“包含编辑文本的线性布局”。为此,您必须在LinearLayout中添加一个ID。我正在更新我的答案。。