我正在开发一个聊天应用程序,我想创建一个聊天屏幕布局,如以下屏幕。
目前我正在为我的聊天文本使用 ListView,但问题是要阅读我必须向下滚动的长聊天,我的屏幕不会自动滚动。
我想要这种气泡式的聊天布局。如何开发这种聊天布局?
我正在开发一个聊天应用程序,我想创建一个聊天屏幕布局,如以下屏幕。
目前我正在为我的聊天文本使用 ListView,但问题是要阅读我必须向下滚动的长聊天,我的屏幕不会自动滚动。
我想要这种气泡式的聊天布局。如何开发这种聊天布局?
您在这里需要的是一个带有页眉和页脚部分的布局,主视图为ListView
.
这ListView
应该有一个自定义Adapter
来显示消息项。
要实现这种类似气泡的显示,您的 itemRenderer 应该能够处理状态 ( fromMe
- fromOther
)。
要拥有气泡,您应该将不同的backgroundDrawable
(指向左侧和右侧的气泡 9 补丁)附加到不同的状态。
如果您卡在某个地方,请分享相关的代码片段和 logcat 输出,以便我们进一步帮助您。
尝试查看此内容以创建 listView 的自定义视图。
我会创建一个父视图和一个传入的视图和一个从它继承的传出视图,并根据它们的颜色和重力改变颜色和重力。
您需要以下内容:
使用这些作为参考:
http://developer.android.com/reference/android/app/ListActivity.html
http://developer.android.com/reference/android/widget/BaseAdapter.html
好的,如果我理解正确,您需要做的就是为 Listview 实现自动滚动。
如果是这样,那么smoothScrollToPosition
每次添加某些内容时尝试调用。我不知道你的课是什么样子,但也许可以运行这样的东西(伪代码)
customListview.addNewChat(...);
customListView.smoothScrollToPosition(customListView.getCount());