ios 仿微信,短信聊天气泡

微信聊天功能测试用例设计 一.功能测试 【常规消息】 1.常规消息,输入框可输入内容校验(数字,汉字,字母,字符,特殊字符,表情等),能正常发送/接收这些内容 2.可输入内容长度校验(用到边界值,包括为空,为1个字符,为max-1,max,max+1个字符,超长字符等) 3.微信输入框是否支持复制粘贴剪切全选等功能 【其他类型消息】 1.能否正常发送/接收语音,视频,文件,图片,位置,我的收藏,红包等其他类型的消息 2.语音消息允许最短时间,最长时间限制&视频消息允许时长限制&可发送文件个数限制&可发送图片个 阅读详情

苹果短信的聊天气泡和微信的聊天气泡一直很经典,很小的一个气泡根据文字的多少适当变大变小。


其实实现很简单,主要是控件的自适应撑高,这里用到的是cell。

核心代码

- (UIView*)bubbleView:(NSString*)textimageName:(NSString*)name

{

UIView *returnView=[[UIViewalloc]initWithFrame:CGRectZero];

    UIImage*bubble;

returnView.backgroundColor=[UIColorclearColor];//ImageBubble@2x~iphone

    if([nameisEqualToString:@"1"]){//bubble-default-outgoing@2x

        bubble=[[UIImageimageWithContentsOfFile:[[NSBundlemainBundle]pathForResource:@"bubble-default-incoming-green@2x"ofType:@"png"]]resizableImageWithCapInsets:UIEdgeInsetsMake(15.0f,25.0f,16.0f,23.0f)];

    }else{

        bubble=[[UIImageimageNamed:@"ImageBubble~iphone"]stretchableImageWithLeftCapWidth:15topCapHeight:14];

    }

UIImageView *bubbleImageView=[[UIImageViewalloc]initWithImage:bubble];

UIFont *font=[UIFontsystemFontOfSize:13];

CGSize size=[textsizeWithFont:fontconstrainedToSize:CGSizeMake(220.0f,1000.0f)lineBreakMode: NSLineBreakByWordWrapping];

CGSize new1=[textsizeWithFont:fontconstrainedToSize:CGSizeMake(220.0f,size.height)lineBreakMode: NSLineBreakByWordWrapping];

    UILabel*bubbleText;

    if([nameisEqualToString:@"1"]){

        bubbleText = [[UILabel alloc] initWithFrame:CGRectMake(12.0f,5.0f,new1.width+10,new1.height+10)];

    }else{

        bubbleText = [[UILabel alloc] initWithFrame:CGRectMake(5.0f,5.0f,new1.width+10,new1.height+10)];

    }

bubbleText.backgroundColor=[UIColorclearColor];

bubbleText.font=font;

bubbleText.numberOfLines=0;

bubbleText.lineBreakMode=NSLineBreakByWordWrapping;

bubbleText.text=text;

bubbleImageView.frame=CGRectMake(0.0f,0.0f,new1.width+20, new1.height+20.0f);

    if([nameisEqualToString:@"1"]){

        returnView.frame=CGRectMake(40.0f,30.0f,new1.width+20, new1.height+20.0f);

    }else{

        returnView.frame=CGRectMake(260.0f-new1.width,40.0f,new1.width+20, new1.height+20.0f);

    }

[returnView addSubview:bubbleImageView];

[returnView addSubview:bubbleText];

returnreturnView;

}

这段代码可以直接使用,在tableview的代理方法里还要实现cell自适应的高度

- (CGFloat)tableView:(UITableView*)tableViewheightForRowAtIndexPath:(NSIndexPath*)indexPath

最后着重提出一点,其实网上很多类似的demo都可以实现此类效果,但有的demo拿过来发现气泡吹变形了,这可不是方法出了问题,是图片的问题,多找些气泡试试。lz就是被这个事情困扰了好久,换了好几个版本的方法发现

微信聊天记录备份与导出:用WX Backup将iTunes备份转为HTML档案 在数据管理日益重要的今天,聊天记录作为个人数字资产的核心部分,其安全备份与可读性备受关注。传统云备份虽方便,但往往无法提供独立、可检索的档案文件。本地备份则通过iTunes将手机数据完整镜像到电脑,其中微信聊天记录以SQLite数据库形式存储,为深度解析提供了可能。利用开源工具WX Backup,Windows用户可以直接读取这一备份结构,将文字消息导出为HTML或TXT格式,实现聊天记录的可视化归档与全文检索。这一方案不仅适用于换机前的数据留存,也适合长期保存重要对话。本文从备份原理讲起,完整演示了在Wi 阅读详情

相关推荐

仿苹果短信

仿苹果短信

Android聊天气泡如何使用网络.png图片实现拉伸

Android TextView 背景气泡如何使用png拉伸

Small_Wave_Wave的博客 2409

仿iphone气泡短信 DEMO

仿iphone 气泡效果 短信 自定义的LIST

iOS 类似微信,QQ聊天界面的气泡聊天简单实现Demo

http://blog.youkuaiyun.com/deft_mkjing/article/details/51581406

qq_18183763的博客 976

iphone 短信气泡效果UI

一个开源的控件,提供带有气泡的聊天应用风格视图,完全独立的空间,不需要自己再修改代码,拿来就能用

Android 仿iphone 气泡短信 DEMO.zip

源码参考,欢迎下载

仿苹果短信(微信 ,qq)左划弹出菜单

难点: 1、功能的实现,左划、ListView的复用 2、单行显示,多行显示 3、ListView分割线、点击阴影,上下滑动左右滑动无阴影、多点触控改为单点触控 4、融球动画 http://blog.youkuaiyun.com/qiang_xi/article/details/52458520 20181029:补充: https://blog.csdn.ne...

weixin_30242907的博客 462

Android仿iphone-气泡短信-DEMO.zip

Android仿iphone-气泡短信-DEMO.zip

高仿iOS微信客户端

高仿微信,并实现IM功能

gjjshgu的博客 8685

OCS2 移动机械臂深度解析:ocs2_mobile_manipulator 与 ocs2_mobile_manipulator_ros 源码全拆解

摘要:本文深入解析OCS2移动机械臂MPC控制框架的两个核心工具包。ocs2_mobile_manipulator负责算法建模,通过MobileManipulatorInterface统一构建最优控制问题,支持4种机械臂模型并实现自动维度推导;ocs2_mobile_manipulator_ros负责ROS集成,包含MPC求解、虚拟跟踪等4个核心节点。文章详细剖析了工具包分工、最优控制建模架构(含动力学、代价约束设计)、ROS运行管线、参数配置映射,并提供了高效的源码阅读顺序建议,帮助开发者快速掌握移动机械

m0_73309445的博客 654

数字后端零基础入门系列 | Innovus零基础LAB学习Day9

数字后端零基础入门系列 | Innovus零基础LAB学习Day9

weixin_37584728的博客 4577

气泡聊天 -- 类似短信、微信界面(计算输入框输入的内容的尺寸size)

//***********************************************************//     *                               气泡聊天  //***********************************************************//  气泡聊天使用 : UITableview

转身扭到脖子的专栏 3191

使用petalinux做嵌入式设计开发(1)

1.创建vivado工程,建立硬件环境,最终导出hdf文件 既可以在windows系统下的vivado上编写硬件工程并导出hdf文件,也可以在linux系统下的vivado中编写硬件工程并导出hdf文件。(对于windows系统下导出的hdf文件还需要传递到linux系统下的文件夹中。) 2.以hdf硬件文件为基础创建,配置,编译,打包petalinux工程,导出linux系统所需镜像文件。 具体步骤: (0)设置环境变量 设置环境变量使得我们可以直接使用petalin...

plotup的博客 2076

android模仿iphone气泡聊天 气泡大小自适应

这两天在做一个电子商城的商品评论功能,想到模仿微信或者iphone中的气泡聊天方式,气泡聊天是iphone内置的控件,不对开发者开放,android中更是没有提供类似的控件。于是先在百度google上搜了一下有没有类似的android实现方式,这样的帖子不多,也就局限于百度的第一页,以下面这个帖子为代表:http://blog.youkuaiyun.com/randyjiawenjie/article/det...

iteye_16107的博客 668

STM32F103用软件I2C读取IP2366电量数据,实测避坑指南(附完整源码)

本文详细介绍了如何使用STM32F103的软件I2C驱动读取IP2366电池管理芯片的电量数据,包括GPIO初始化、I2C时序实现、关键延时优化及常见问题解决方案。通过实测避坑指南和完整源码,帮助开发者快速实现稳定的电量数据读取,适用于嵌入式电池管理系统开发。

weixin_33725722的博客 513

黑猫带你学eMMC协议第2篇:eMMC部分相关名词释义

1 前言 1.1 声明 本文依据eMMC JEDEC5.1、网络资料及个人工作经验整理而成,如有错误请留言。 本文结合eMMC JEDEC5.1协议手册查看效果更佳。 1.2 本文背景 本文关键词不包括emmc jedec5.1协议第3章节:《Terms and definitions》内容。关于emmc协议层的关键词,直接查阅spec相关章节即可,清晰明了,此处没必要再列出。 本文为本人工作学习中常听到或常用到关乎于emmc/flash的一些关键词合集,没有固定分类,不需要强行记忆,供查询使用。 1.

黑猫奥利奥的博客 7432

聊天气泡效果实现

仿iphone 气泡短信 http://www.apkbus.com/android-110117-1-1.html 仿iphone 气泡短信 DEMO http://www.eoeandroid.com/thread-112801-1-1.html android模仿iphone气泡聊天 气泡大小自适应 http://enzoqin.iteye.co

2603

2026.3.10:最新claude code完美解决方案,跳过登录界面,使用国内deepseek-v4-pro进行计费

本文介绍了一种绕过Claude登录界面直接使用国内DeepSeek-V4-Pro服务的解决方案。通过npm全局安装@anthropic-ai/claude-code包,并配置5个关键环境变量:API认证令牌、基础URL(指向DeepSeek服务)、指定模型为deepseek-v4-pro、禁用非必要流量等。文中提供了4张配图辅助说明配置过程,但未展示具体内容。该方案可实现直接计费使用,无需通过官方登录流程。

拥抱具身智能,昇腾Ascend C 6500

【微信】竞品分析

浅写一下微信的竞品分析~

Ronnoner的博客 4372

镜头调焦的 调整的是焦距还是像距?

在镜头 “调焦”(即日常拍照时的)中,调整的核心是,而非焦距。

AIoT深度探索者 | 嵌入式系统架构师 深耕物联网(IoT)与人工智能(AI)融合技术,聚焦​​边缘计算、图像开发、低功耗通信协议​​,致力于智能硬件,关注我获取最新技术文章信息与海量资源~ 1350

安全运营面试总结

答案可以在我的博客中查找 1.自我介绍 2.TCP/IP七层模式 3.端口号(常见协议 数据库) 4.Owasp top 10 5.渗透测试过程 6.漏扫工具 7.中间件漏洞 8.应急响应 9.项目 10.SQL注入类型 11.TCP 三次握手 四次挥手 12.你有什么要问我的 1.自我介绍 2.项目介绍 3.宽字节注入的原理 4.渗透流程 5....

qq_51577576的博客 4413

HarmonyOS NEXT ArkTS 聊天界面布局实战——Column + Scroll + Row 构建完整聊天交互

组件角色类比Column全屏纵向容器类似 Android 的 LinearLayout(vertical)Scroll可滚动消息区域类似 iOS 的 UIScrollViewRow每条消息的横向布局类似 CSS 的 flex-direction: rowColumn 提供全屏的基础架构,Scroll 处理消息列表的滚动行为,Row 控制每条消息中"头像 + 气泡"的对齐方式。三者组合,足以应对从简单聊天到复杂社交信息流的各种场景。在编写 UI 之前,需要先定义消息的数据结构。ArkTS 中使用。

Hhuhkt的博客 413

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

手机语音通信时代,国内四大安卓语音通信软件分享

最近,一部电视剧《裸婚时代》的热播,不光引起大家对80后婚姻生活态度的热议。同时,也再一次引起大家对剧中主人公“时尚生活”的追捧。而这次,追捧的不再是衣服,帽子,饰品。而是一款神秘的“视频语音短信”~剧中男女主人公每每甜言蜜语时的录音视频发送,都让观众垂涎不已。与此同时,网络上出现了N多咨询该软件为何物的帖子。。。由此可见,随着智能手机以及3G网络的普及,人们早已不满足于平淡的电话,文本短信等基本

lazy_mind 2920

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

手机通知隐私保护指南:隐藏私密聊天消息的完整设置方法

移动互联网时代,手机通知已成为隐私泄露的高频入口。一条消息弹窗,可能同时暴露联系人备注、聊天内容甚至验证码信息。从原理上看,锁屏通知、横幅提醒、状态栏角标构成了三大泄露窗口。因此,掌握通知预览的精细化设置,是成本最低、见效最快的隐私保护手段。无论是iOS的“显示预览”与专注模式,还是安卓厂商定制的隐藏通知内容选项,都能有效阻断“余光偷窥”。同时,微信、QQ等应用内的消息详情开关,以及隐私空间、应用分身等进阶方案,可满足不同场景下的防护需求。本文从系统级拦截到应用内加固,再到常见排障技巧,提供一套可落地的手机

weixin_32456485的博客 272

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

上一篇: iOS最火的开源项目
下一篇: iOS开发 mac证书无法展开
map625
博客等级 码龄14年 16粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值