首页 > 微信应用  > 

详解Android高仿微信聊天界面实例

详解Android高仿微信聊天界面实例
微信聊天现在非常火,是因其界面漂亮吗,哈哈,也许吧。微信每条消息都带有一个气泡,非常迷人,看起来感觉实现起来非常难,其实并不难。下面小编给大家分享实现代码

微信聊天现在非常火,是因其界面漂亮吗,哈哈,也许吧。微信每条消息都带有一个气泡,非常迷人,看起来感觉实现起来非常难,其实并不难。下面小编给大家分享实现代码

先给大家展示下实现效果图:

OK,下面我们来看一下整个小项目的主体结构:

下面是Activity的代码:

package com.way.demo; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; /** * @author way */ public class WeixinChatDemoActivity extends Activity implements OnClickListener { private Button mBtnSend;// 发送btn private Button mBtnBack;// 返回btn private EditText mEditTextContent; private ListView mListView; private ChatMsgViewAdapter mAdapter;// 消息视图的Adapter private List<chatmsgentity> mDataArrays = new ArrayList<chatmsgentity>();// 消息对象数组 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); initView();// 初始化view initData();// 初始化数据 mListView.setSelection(mAdapter.getCount() - 1); } /** * 初始化view */ public void initView() { mListView = (ListView) findViewById(R.id.listview); mBtnSend = (Button) findViewById(R.id.btn_send); mBtnSend.setOnClickListener(this); mBtnBack = (Button) findViewById(R.id.btn_back); mBtnBack.setOnClickListener(this); mEditTextContent = (EditText) findViewById(R.id.et_sendmessage); } private String[] msgArray = new String[] { "有大吗", "有!你呢?", "我也有", "那上吧", "打啊!你放大啊!", "你TM咋不放大呢?留大抢人头啊?CAO!你个菜B", "2B不解释", "尼滚...", "今晚去网吧包夜吧?", "有毛片吗?", "种子一大堆啊~还怕没片?", "OK,搞起!!" }; private String[] dataArray = new String[] { "2012-09-22 18:00:02", "2012-09-22 18:10:22", "2012-09-22 18:11:24", "2012-09-22 18:20:23", "2012-09-22 18:30:31", "2012-09-22 18:35:37", "2012-09-22 18:40:13", "2012-09-22 18:50:26", "2012-09-22 18:52:57", "2012-09-22 18:55:11", "2012-09-22 18:56:45", "2012-09-22 18:57:33", }; private final static int COUNT = 12;// 初始化数组总数 /** * 模拟加载消息历史,实际开发可以从数据库中读出 */ public void initData() { for (int i = 0; i  0) { ChatMsgEntity entity = new ChatMsgEntity(); entity.setName("必败"); entity.setDate(getDate()); entity.setMessage(contString); entity.setMsgType(false); mDataArrays.add(entity); mAdapter.notifyDataSetChanged();// 通知ListView,数据已发生改变 mEditTextContent.setText("");// 清空编辑框数据 mListView.setSelection(mListView.getCount() - 1);// 发送一条消息时,ListView显示选择最后一项 } } /** * 发送消息时,获取当前事件 * * @return 当前时间 */ private String getDate() { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); return format.format(new Date()); } }</chatmsgentity></chatmsgentity>

详解Android高仿微信聊天界面实例由讯客互联微信应用栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“详解Android高仿微信聊天界面实例