채팅 인터페이스처럼 작동하는 UI를 갖기 위해 LinearLayout을 사용합니다 (하단에는 메시지를 보내려면 여러 줄짜리 EditText와 버튼이 있습니다). , 메시지를 보여주는 listview).채팅 인터페이스 용 레이아웃
ListView는 EditText 및 Button으로 남은 여유 공간을 차지합니다.
지금은 FrameLayout (ListView가 포함되어 있으며 한 번에 하나의 ListView 만 표시)과 RelativeLayout (EditText 및 Button 포함)이 포함 된 세로 형 LinearLayout이 있습니다. FrameLayout과 RelativeLayout에 가중치를 넣어 목록 뷰가 거의 모든 공간을 차지할 수 있도록합니다.
지금은 작동하지만 문제는 EditText를 입력 할 때 EditText가 매우 작아서 한 줄만 표시된다는 것입니다.
하지만 가능한 한 많은 메시지를 표시하기 위해 포커스가 맞지 않을 때 작은 EditText를 사용하고 가능한 한 많은 행을 표시하기 위해 입력 할 때 더 큰 EditText를 사용하고 싶습니다. .
여기 내 레이아웃입니다 :
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="1dp"
android:paddingLeft="1dp"
android:paddingRight="1dp"
android:paddingTop="1dp"
tools:context=".ChatActivity"
android:background="#f0f4fc"
android:weightSum="100">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="82" >
<ListView
android:id="@+id/chat1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:divider="#b5b5b5"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector"
/>
<ListView
android:id="@+id/chat2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:divider="#b5b5b5"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector"
android:visibility="gone" />
</FrameLayout>
<RelativeLayout
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="18"
android:background="#f0f4fc"
android:descendantFocusability="beforeDescendants"
android:focusableInTouchMode="true" >
<EditText
android:id="@+id/messageBox"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/sendButton"
android:ems="10"
android:gravity="top"
android:hint="@string/enterMessageHere"
android:minHeight="50dp"
android:inputType="textMultiLine"
android:lines="3"
android:maxLines="3"
android:minLines="3" >
<!-- <requestFocus /> -->
</EditText>
<Button
android:id="@+id/sendButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="@string/send" />
</RelativeLayout>
그래서, 간단히 말해서, 나는 "이동 SMS"인터페이스 같은 것을 갖고 싶어, 그것은 좋은 것입니다.
미리 도움 주셔서 감사합니다.
이것이 도움이되는지 확인하십시오. [Listview의 왼쪽 및 오른쪽 정렬 행?] (http://stackoverflow.com/questions/17762473/left-and-right-alignment-rows-inside-listview/17762749#17762749) – Vikram