0

我是 android 新手,我正在开发一个与在线聊天相关的应用程序。在聊天屏幕中,我正在尝试将聊天框大小设置为文本视图大小。

随着文本视图大小的增加和减少,如何增加和减少聊天框的大小?

4

3 回答 3

1

设置Relative Layout高度wrap_contenttextview高度。

WRAP_CONTENT,这意味着视图希望足够大以包含其内容。

于 2012-09-24T09:05:06.943 回答
1

看到这个

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:weightSum="1.0"
android:layout_weight="1" android:layout_height="wrap_content">

<TextView android:id="@+id/lefttext" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="10dip" 
    android:layout_marginTop="10dip"
    android:layout_marginBottom="5dip"
    android:layout_alignParentLeft="true"
    android:maxWidth="250dip"/>

<TextView 
    android:id="@+id/righttext" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="10dip" 
    android:layout_marginTop="10dip"
    android:layout_marginBottom="5dip"
    android:layout_alignParentRight="true"
    android:maxWidth="250dip"/>
  </RelativeLayout>

这是我的自定义数组适配器的 getView 方法中的代码:

View view = convertView;
if(view == null){
     view = mInflater.inflate(R.layout.list_item, null);
}

Resources res = getContext().getResources();
Drawable bubblesChat = res.getDrawable(R.drawable.bubbles_chat);
Drawable bubblesResponse = res.getDrawable(R.drawable.bubbles_response);
TextView left = (TextView) view.findViewById(R.id.lefttext);
TextView right = (TextView) view.findViewById(R.id.righttext);

String txt = super.getItem(position);
if(txt.startsWith("s:")) {
    left.setText(getItem(position));
    left.setBackgroundDrawable(bubblesChat);
    right.setText("");
    right.setBackgroundDrawable(null);
} else {
    right.setText(getItem(position));
    right.setBackgroundDrawable(bubblesResponse);
    left.setText("");
    left.setBackgroundDrawable(null);
}
return view;

备用聊天气泡宽度http://warting.se/2012/06/04/chat-bubbles-in-android/

于 2012-09-24T09:08:58.400 回答
0

您可以最好采用布局RelativeLayout,并且每当您的TextView大小增加或减少时,通过动态设置新的来刷新您的聊天视图LayoutParams

于 2012-09-24T09:25:05.817 回答