首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    鸿蒙NEXT版仿微信聊天App的气泡背景

    上一节我们实现了仿微信聊天页面的消息左右对齐方式,那么聊天消息的气泡背景也是很有必要的,不管聊天消息有多长有多高,气泡背景都能自动跟着拉长拉高,恰当地把消息内容都包裹在气泡中,如下图所示。...由于点九图的拉伸效果经常用于气泡背景,因此可引入Stack容器,把添加了resizable的Image组件当做容器背景,把实际的展示内容作为容器前景,从而实现叠加了气泡背景的聊天消息效果。...比如下面代码就往Stack容器依次放入Image组件和Text组件,由此实现聊天消息的气泡背景。...,就能实现跟随文本内容尺寸而动态调整宽高的气泡背景效果了。...下一篇文章会介绍如何给仿微信聊天App集成第三方的SocketIO库。

    15210

    Android点九图总结以及在聊天气泡中的使用

    点九图介绍 这一块是对点九图的简单介绍,如果对这块已经有了解的话,可以直接跳到2,看看聊天气泡中如何使用点九图。...并不是直接使用点九图,而是在编译时将其转换为另外一种格式(见3.1),这种格式是将其四周的黑色像素保存至Bitmap类中的一个名为mNinePatchChunk的byte[]中,并抹除掉四周的这一个像素的宽度...聊天气泡中使用点九图 2.1 遇到的问题和解决方案 先简单说下从网上拉取点九图的过程,首先使用url请求网络数据,并将结果缓存为本地文件,再使用文件流创建Bitmap,接着使用Bitmap创建drawable...再看看上面1.5的解析原理,它会带来一个坑,由于聊天气泡需求需要使用url从网络上拉取点九图,如果这个点九图没有经过编译的过程,将其周围的黑线标记放入到png中的一个辅助chunk中,那么在使用这个图作为背景时

    5.8K42

    Unity 【Content Size Fitter】- 聊天气泡自动适配Text文本框大小

    通常在展示人物对话的时候文本的长度是不定的,因此会需要动态的调整对话内容文本框的背景图片的大小,这里以如下这种气泡框的对话为例: 实现该需求涉及到的内容包括Content Size Fitter组件的使用...其大小从右到左进行拉伸,则其Pivot设置的是(1,0.5): 当我们Sprite切图的Sprite Mode为Single模式,我们拉伸切图时会发生变形: 2D Sprite工具则可以帮我们实现拉伸气泡框的切图大小时...为Image设置裁剪好的Sprite切图,并将Image Type设为Sliced类型,调整Pixel Per Unit Multiplier为适当数值: 如图所示,这时我们再拉伸气泡框时,切图不会发生变形...: 代码部分只需要根据text文本框的大小设置气泡的大小: bubble.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, text.preferredWidth

    2.9K00

    Android 点九图机制讲解及在聊天气泡中的应用

    并不是直接使用点九图,而是在编译时将其转换为另外一种格式,这种格式是将其四周的黑色像素保存至Bitmap类中的一个名为 mNinePatchChunk 的 byte[] 中,并抹除掉四周的这一个像素的宽度.../aapt c -S /Users/junxu/Desktop/一期气泡/气泡需求整理 -C /Users/junxu/Desktop/一期气泡/output Crunching PNG Files...in source dir: /Users/junxu/Desktop/一期气泡/气泡需求整理 To destination dir: /Users/junxu/Desktop/一期气泡/output..., bitmap, chunk, NinePatchChunk.getPaddingRect(chunk), null); view.setBackground(patchy); 动态下载点九图会导致聊天气泡闪烁...这里我们采取的方案是预下载(预下载 10 个) 聊天气泡采用内存缓存,磁盘缓存,确保 RecyclerView 快速滑动的时候不会闪烁 ---- 理解点九图 以下内容参考腾讯音乐的 Android动态布局入门及

    1.4K20

    win10 uwp 气泡 WPF 气泡

    如果做聊天工具,需要气泡。 本文,如果写一个气泡控件需要如何做 WPF 气泡 先说如何在 WPF 做一个气泡。 可以看到,气泡就是一个和 Grid 差不多的东西,只是有边框,边框是一个气泡 ? ?...可以看到一个气泡是尖的气泡和一个矩形组成 我做了一些修改,先做一个像这样的气泡 ? 气泡分为两部分,一个是尖头一个矩形 ?...可以看到,尖头大小可以固定,但是矩形必须使用子控件的大小 于是先假如子元素的宽度是100,高度 50 ,这样来画一个气泡。 如何画一个三角?...添加的距离是矩形宽度的一半减去5,看到这里一般不会觉得有困难。...于是添加到实际的值,这里矩形宽度为 100 于是最后的值就是 (45,5) ,第二个点是 (50,0) 第三个点是 (55,5) 接下来就是计算矩形的值,矩形的值就是 x=0 y=5 ,宽度 100 高度

    1.5K10

    基于GPT搭建私有知识库聊天机器人(六)仿chatGPT打字机效果

    文章链接: 基于GPT搭建私有知识库聊天机器人(一)实现原理 基于GPT搭建私有知识库聊天机器人(二)环境安装 基于GPT搭建私有知识库聊天机器人(三)向量数据训练 基于GPT搭建私有知识库聊天机器人...现在,我们将继续改进聊天界面,实现类似chatGPT打字机的效果聊天,避免长时间等待接口数据返回,以提升用户体验。...margin-bottom: 10px; padding: 8px 12px; border-radius: 20px; max-width: 70%; /* 设置最大宽度...; /* 添加额外的间距,让气泡靠右 */ } .bot-message { color: #555; background-color: #d9edf7; /* 机器人消息气泡背景色...5、总结 通过使用 SSE 技术和打字机样式输出,我们成功改进了聊天机器人的界面,实现了更加动态和流畅的聊天体验。这样的用户界面使得聊天机器人更加接近真实对话,提升了用户体验。

    72030

    如何快速实现AI大模型聊天对话框的页面布局?

    对于前端开发来说,巧妙的利用CSS的属性,可以快速的布局一个聊天窗口。下面来一起看看吧!需求描述某次我接到一个开发任务,那就是要开发一个AI对话聊天窗口。...#419fff; color: #fff; border-radius: 12px 2px 12px 12px; padding: 8px; max-width: 80%; /* 确保内容不超过屏幕宽度...background: #daedff; color: #333; border-radius: 12px; padding: 8px; max-width: 80%; /* 确保内容不超过屏幕宽度...*/ word-break: break-all; /* 长单词自动换行 */}我上面写的每个对话气泡,都设置了max-width,这是为了防止消息宽度超出屏幕,同时也适配了消息长度比较小的情况...如果要开发的不是AI聊天一问一答的形式,而是通过WebSocket的实时聊天室这样的,那么这个数组对下的结构就不太使用了。

    61400

    点滴匠心,声入人心

    本次语音气泡的设计中,我们依旧沿用了按钮、游标、色彩作为指示性元素。 但是这些元素的加入无疑会加重气泡内的信息负担。并且当同时出现多个语音气泡时,我们更加需要保证聊天页面有适当的信息密度。...但是我们的手指宽度和控件大小有时难以匹配。例如,8.0UI改版后的语音气泡高度为118px,而成人手指的宽度范围则在110px-180px。...拖拽事件的触发范围由气泡本身扩大到气泡的外边缘区域。 第二次放大:拖拽中,拖动行为的响应范围扩大到全屏。一旦用户触发拖拽,系统将屏蔽聊天页面的所有操作,包括右滑返回、上下滚动和页面内的所有点击操作。...更合理的气泡长度变化规则 -“语音越长,气泡越长,so easy~” 气泡越长代表语音越长。但你可能没注意过,其实气泡长度是随着语音时长呈线性变化。...此时语音气泡较短,十分不易于进行拖拽。所以我们既需要短语音气泡变长,又要保证用户可以感知到气泡始终随着时长增长而变长。

    85440

    QQ 8.0改版策划故事

    本次语音气泡的设计中,我们依旧沿用了按钮、游标、色彩作为指示性元素。 ? 但是这些元素的加入无疑会加重气泡内的信息负担。并且当同时出现多个语音气泡时,我们更加需要保证聊天页面有适当的信息密度。...但是我们的手指宽度和控件大小有时难以匹配。例如,8.0UI改版后的语音气泡高度为118px,而成人手指的宽度范围则在110px-180px。...一旦用户触发拖拽,系统将屏蔽聊天页面的所有操作,包括右滑返回、上下滚动和页面内的所有点击操作。确保用户在手指未离开屏幕的前提下,可以在整个页面范围内控制进度拖拽。...更合理的气泡长度变化规则 -“语音越长,气泡越长,so easy~” 气泡越长代表语音越长。但你可能没注意过,其实气泡长度是随着语音时长呈线性变化。...此时语音气泡较短,十分不易于进行拖拽。所以我们既需要短语音气泡变长,又要保证用户可以感知到气泡始终随着时长增长而变长。

    1.3K30

    Power BI 表格矩阵可视化之目标对比、同期对比

    Power BI在2023年的首更有个重要内容:表格矩阵的图像高度宽度可以分别设置参数(详情:Power BI 重大更新:可视化能力大幅提升!),这使得表格矩阵的可视化能力上了一个大台阶。...因此,推荐使用SVG自定义,《Power BI 优化表格矩阵中的条形图》给出了度量值写法,当时Power BI尚不支持宽度高度不同参数,把度量值中的宽度值改大些即可得到下图的效果。...华夫饼图也可以作为替代《Power BI 模拟麦肯锡华夫饼图》 接下来看实际与目标差多少,条形图和子弹图都可以直观展示(如上图右侧),条形图参考《Power BI 优化表格矩阵中的条形图》,子弹图其实也是条形图...率值对比在条件格式中推荐使用气泡图,《Power BI 表达气泡6招》介绍了制作方法。

    3.9K30

    微信“ 15。。。。。。。。。”来龙去脉

    信息会导致微信聊天界面卡死,整个垮掉,竟然垮掉。...这需求还得得益于之前有几个用户会反馈说“微信Android的聊天气泡好像没有iOS的美观,比较死板”。这个问题也引起了我们的关注。 那事实是否如此呢?...我们对iOS和Android进行了对比,如下图: 从效果图看,iOS确实比Android好看了些,至少最右边并不会有多余的padding这么明显,简单来说多余的padding产生的原因是气泡宽度受屏幕大小的限制...,所以这里TextView即是气泡有了最大的宽度限制,当剩下的空间不足以容下一个字符时,系统排版会选择自动换行,导致了这个问题的产生。...我们就这个问题跟设计组的同事进行讨论,通过他们的调研及尝试,得出了一个合理的方案,那就是最多允许有一个英文字符宽度的调整范围,将调整的宽度平均分配到当前行每个字符中去,对用户来说影响是最小的,同时也保持了一定的美观

    3.5K40
    领券