日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用ListView实现汽泡短信聊天

發布時間:2025/3/21 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用ListView实现汽泡短信聊天 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

小魏原創,歡迎轉載~
轉載請注明出處:http://blog.csdn.net/xiaowei_cqu/article/details/7045543

如前文http://blog.csdn.net/xiaowei_cqu/article/details/7045497

我們進行了SimpleAdapter適配器初次嘗試,那么離實現我們最終想要的效果也不遠啦,只要仿照chata的布局,再編寫第二位聊天人(“路人甲”)的布局chatb——只要讓他靠右顯示就行~。

但是這樣我們每次都要很麻煩的定義一遍SimpleAdapter,為了“偷懶”,我們直接來編寫自己的Adapter,這樣每次定義就方便多了。

先附上最終的代碼:

[java]?view plaincopy
  • public?void?onCreate(Bundle?savedInstanceState)?{??
  • ????????????super.onCreate(savedInstanceState);??
  • ????????????setContentView(R.layout.main);??
  • ????????????chatlist?=?(ListView)?findViewById(R.id.chatlist);??
  • ????????????list?=?new?ArrayList<ChatEntity>();??
  • ????????????ChatEntity?chat1=new?ChatEntity("小魏","嗨~",R.layout.chata);??
  • ????????????list.add(chat1);??
  • ????????????ChatEntity?chat2=new?ChatEntity("路人甲","你好!",R.layout.chatb);??
  • ????????????list.add(chat2);??
  • ????????????ChatEntity?chat3=new?ChatEntity("小魏","我是小魏~",R.layout.chata);??
  • ????????????list.add(chat3);??
  • ??????????????
  • ????????????chatlist.setAdapter(new?ChatAdapter(TryChatPop2Activity.this,list));??
  • }??
  • 如上代碼,在setAdapter時使用了自己的ChatAdapter,以下是類文件代碼:

    [java]?view plaincopy
  • public?class?ChatAdapter?implements?ListAdapter{??
  • ????private?ArrayList<ChatEntity>?list;??
  • ????private?Context?ctx;??
  • ??
  • ????public?ChatAdapter(Context?context?,ArrayList<ChatEntity>?list)?{??
  • ????????ctx?=?context;??
  • ????????this.list?=?list;??
  • ????}??
  • ??????
  • ????public?boolean?areAllItemsEnabled()?{??
  • ????????return?false;??
  • ????}??
  • ????public?boolean?isEnabled(int?arg0)?{??
  • ????????return?false;??
  • ????}??
  • ????public?int?getCount()?{??
  • ????????return?list.size();??
  • ????}??
  • ????public?Object?getItem(int?position)?{??
  • ????????return?list.get(position);??
  • ????}??
  • ????public?long?getItemId(int?position)?{??
  • ????????return?position;??
  • ????}??
  • ????public?int?getItemViewType(int?position)?{??
  • ????????return?position;??
  • ????}??
  • ????public?View?getView(int?position,?View?convertView,?ViewGroup?parent)?{??
  • ????????ChatEntity?entity?=?list.get(position);??
  • ????????int?itemLayout?=?entity.getLayoutID();??
  • ??????????
  • ????????LinearLayout?layout?=?new?LinearLayout(ctx);??
  • ????????LayoutInflater?vi?=?(LayoutInflater)?ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);??
  • ????????vi.inflate(itemLayout,?layout,true);??
  • ??????????
  • ????????TextView?txvName?=?(TextView)?layout.findViewById(R.id.txvName);??
  • ????????txvName.setText(entity.getName());??
  • ??????????
  • ????????TextView?txvText?=?(TextView)?layout.findViewById(R.id.txvInfo);??
  • ????????txvText.setText(entity.getInfo());??
  • ????????return?layout;??
  • ????}??
  • ????public?int?getViewTypeCount()?{??
  • ????????return?list.size();??
  • ????}??
  • ????public?boolean?hasStableIds()?{??
  • ????????return?false;??
  • ????}??
  • ????public?boolean?isEmpty()?{??
  • ????????return?false;??
  • ????}??
  • ????public?void?registerDataSetObserver(DataSetObserver?observer)?{??
  • ????}??
  • ????public?void?unregisterDataSetObserver(DataSetObserver?observer)?{??
  • ????}??
  • ??
  • }??
  • ChatAdapterd的類實現了ListAdapter的接口,并通過ChatEntity中的內容設置了定義布局中聊天對象名字txvName及聊天內容txvInfo的內容,當然你肯定能明白ChatEntity就是存放聊天信息等內容的實體類。

    這里我們可以這樣寫,就是因為ListAdapter的接口是綁定Data和ListView的適配器,實際上我們常用的ArryaAdapter、SimpleAdapter、CursorAdapter就是他的子類。

    關系如下:

    這樣再看代碼,甚至再回頭看SimpleAdapter就感覺好理解多了,其他內容不細說了,具體參照源碼:http://download.csdn.net/detail/xiaowei_cqu/3886321

    再上一遍效果圖:

    《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

    總結

    以上是生活随笔為你收集整理的使用ListView实现汽泡短信聊天的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 911美女片黄在线观看游戏 | 婷婷深爱五月 | 欧美成人69 | 高清视频在线免费观看 | 亚洲免费大片 | 国产一级色| 草草草在线观看 | 少妇情理伦片丰满午夜在线观看 | av免费网站| 欧美成人综合色 | 亚洲在线看 | 精品成人在线 | 特黄aaaaaaaaa毛片免费视频 | 亚洲一区二区黄色 | 久久成人亚洲 | 中国大陆高清aⅴ毛片 | 黄色在线网站 | 羞羞影院体验区 | 国产91精品久久久久久久网曝门 | 精品视频在线观看一区 | 动漫女生光屁股 | 亚洲一本二本 | 欧美激情图区 | 九色视频网 | www.com久久| 波多av在线| 美女脱得一干二净 | 亚洲aⅴ乱码精品成人区 | 婷婷伊人综合 | 国产欧美日韩高清 | 精品久久视频 | 亚洲精品影院 | 欧美一级黄色片 | av大全网站 | 人人色网| 免费毛片网站 | 国产乱码在线观看 | 国产免费看av | 午夜精品亚洲 | 边打电话边做 | 激情五月在线观看 | 午夜激情视频网 | 日本国产视频 | 激情一区二区三区 | av手机免费观看 | 女女同性女同一区二区三区九色 | 久操福利视频 | 国内露脸中年夫妇交换 | 森泽佳奈作品在线观看 | 欧美性视频一区二区三区 | 探花国产精品一区二区 | 在线视频欧美亚洲 | 久久免费在线观看视频 | 亚洲av无码乱码在线观看性色 | 免费色av| 日韩欧美一级大片 | 欧美激情亚洲色图 | 欧美丰满熟妇bbbbbb百度 | 黄色小说图片视频 | www.午夜激情| 亚洲射射| 狠狠鲁狠狠干 | 欧美亚洲精品天堂 | 欧美一级片在线视频 | 正在播放91| 亚洲国产天堂av | 久久不卡av | 亚洲免费视频网站 | 黄色网页在线 | 123超碰| 成人黄色一区二区三区 | 九九久久99 | 国产 中文 字幕 日韩 在线 | a天堂视频在线观看 | 黄色wwww | 在线欧美日韩 | 日韩激情一区二区三区 | 伊人久久香 | 日韩中文字幕 | 淫片一级国产 | 大尺度做爰床戏呻吟舒畅 | 狂躁美女大bbbbbb黑人 | heyzo久久| 天天操操操操 | 天天做夜夜爱 | 欧美成人免费一级人片100 | 香蕉国产在线 | 国产精品99久 | 中国一级片黄色一级片黄 | 国产夫妻性生活视频 | 丁香花电影在线观看免费高清 | 噼里啪啦国语版在线观看 | 国产在线观看无码免费视频 | 黑丝国产一区 | 中文字幕日韩欧美一区二区 | 亚州a级片 | 在线免费黄色 | 国产精品午夜无码专区 | 天堂亚洲 |