图片拉伸问题

简介: 图片拉伸问题

图片拉伸问题


UIImage *image = [UIImage imageNamed:@"chat_send_nor"];

// 1.2 拿到image的尺寸
CGFloat imageWidth = image.size.width;
CGFloat imageHeight = image.size.height;
###方式一
UIImage *resizableImage = [image resizableImageWithCapInsets:UIEdgeInsetsMake(imageHeight * 0.5, imageWidth * 0.5, imageHeight * 0.5 -1, imageWidth * 0.5 - 1) resizingMode:UIImageResizingModeTile];
[self.button setBackgroundImage:image forState:UIControlStateNormal];
###方式二
/*
   右边需要保护的区域 = 图片的width - leftCapWidth - 1
   底部需要保护的区域 =  height - topCapHeight - 1
 */
UIImage *resizableImage = [image stretchableImageWithLeftCapWidth:imageWidth * 0.5 topCapHeight:imageHeight * 0.5];
[self.button setBackgroundImage:image forState:UIControlStateNormal];

方式三   在Assets.xcassets里面设置就可以

c73c1a39fe9ffd6a99694e2c1aedd0c2.png

如果你非得用代码的话,我建议给UIImage添加一个分类

步骤如下

第一步:

e4c9f26d5aac5a3d1db2b9d2d7dd1342.png

第二步:

f8c4025f4596a0b97a4003e16cf5e6f5.png

第三步:在.h文件提供一个方法出来

4854247a595a2420641c2232e3b75e51.png

第四步:在.m文件中实现

53c83e27a34efb3d54570fb1656d32a2.png

使用方法:

导入头文件  类方法调用传递一张图片名字就OK

477d51bbeaedf1807e062241736eb8a0.png

相关文章
|
5月前
|
人工智能 自然语言处理 安全
99%成功率背后:阿里云短信群发平台哪些优势?收费价格多少钱一条?
阿里云短信群发平台,99%高送达率,支持全球200+国家和地区。高并发、安全API调用,多语言SDK快速接入。提供智能管控、防盗刷、AI模板助手等功能。短信低至0.01元/条,按量付费最低0.036元/条。
769 1
|
8月前
|
存储 SQL NoSQL
终于有人把数据库讲明白了
数据库是存储、管理与高效查询数据的系统,广泛应用于各类软件与企业系统。本文详解关系型与非关系型数据库的分类、特点及适用场景,结合实际案例教你如何选型,并介绍多数据库协同架构,助你构建高效、可扩展的数据体系。
终于有人把数据库讲明白了
|
存储 数据采集 JSON
你知道吗?html_table可以提取的不止是表格
`html_table` 是一种强大的工具,不仅用于HTML表格解析,还在现代爬虫技术中发挥重要作用。它可以提取、整合、分析和传输多种类型的关键数据。本文从四个方面探讨其功能:关键数据提取(如财经网站的股票信息)、零散信息整合(如电商网站的产品详情)、数据对比分析(如手机性能参数对比)和数据存储与传输(如转换为CSV/JSON格式)。通过Python代码示例,展示了如何利用代理IP、多线程和自定义请求头提高爬虫效率,实现对复杂网页数据的全面抓取和利用。
437 12
你知道吗?html_table可以提取的不止是表格
|
Linux 网络安全 开发工具
码云
码云
801 2
|
人工智能 搜索推荐 iOS开发
OpenAI推出适用于iPhone的ChatGPT,与Apple实现具有里程碑意义的AI整合
OpenAI推出适用于iPhone的ChatGPT,与Apple实现具有里程碑意义的AI整合
|
Java
Java Set 是一个不包含重复元素的集合接口,确保每个元素在集合中都是唯一的
【10月更文挑战第14天】Java Set 是一个不包含重复元素的集合接口,确保每个元素在集合中都是唯一的。本文介绍了 Set 的独特特性和两个常用实现类:基于哈希表的 HashSet 和基于红黑树的 TreeSet。通过示例代码展示了它们如何高效地处理唯一性约束的数据。
320 3
|
编解码 开发工具 Android开发
Windows平台RTMP推送|轻量级RTSP服务如何实现摄像头叠加到屏幕输出
大牛直播SDK采用先进的图层概念实现视频叠加,如将摄像头画面实时叠加到屏幕输出,以C#为例展示了具体的配置方法。用户可在推送RTMP或启动RTSP服务前选择“摄像头叠加到屏幕”的选项,并调整位置。SDK还支持摄像头的开启与关闭、水平垂直翻转及旋转等功能。此外,该SDK提供了丰富的特性,包括但不限于视频和音频采集处理、硬编码与软编码支持、多实例推送、水印添加、网络适应性调整等,几乎涵盖了RTMP推送的所有常规需求,并能与播放器协同工作达到毫秒级的低延迟,非常适合无纸化同屏、智慧教室等应用场景。
422 4
|
机器学习/深度学习 数据采集 PyTorch
【单点知识】基于实例讲解PyTorch中的ImageFolder类
【单点知识】基于实例讲解PyTorch中的ImageFolder类
837 1
|
Windows
【Windows】windows10 时间显示秒数
【Windows】windows10 时间显示秒数
806 0
【Windows】windows10 时间显示秒数
|
存储 缓存 算法
【Conan 入门教程 】了解 Conan2.1 中默认生成器的作用
【Conan 入门教程 】了解 Conan2.1 中默认生成器的作用
514 1