
IOS
文章平均质量分 74
sziitjin
安卓App开发工程师
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
IOS 26 实现歌单详情(UITableView)列表 ③
将歌单详情分为两组,图1为1组,图2为1组,每组都包含头部View(UITableViewHeaderFooterView);图1不需要头部View,则设置头部View隐藏,图2头部View在滚动歌单列表到顶部时,头部View会固定在顶部不消失。的基础上,实现歌单列表分组头部View。当歌单列表滑动头部View至顶部时,头部View不会因列表滑动而消失,会一直显示在顶部。4)重写cellForRowAt方法,创建对应的Cell,并将分组数据内的列表的Item数据绑定到Cell。原创 2024-09-19 10:00:00 · 714 阅读 · 0 评论 -
IOS 25 实现歌单详情(UITableView)列表 ②
歌单详情完整效果歌单详情歌单列表头部+图片背景效果本节是在文章IOS 24 实现歌单详情(UITableView)列表的基础上,实现歌单详情里面的歌单列表头部Cell和图片背景效果。歌单列表头部Cell实现实现流程:1.创建Cell,及在使用UITableView的Controller控制器上注册Cell;2.获取data列表数据,并调用UITableView的reloadData(),将数据更新到列表;3.将data的Item数据绑定UITableView的每一个Ce原创 2024-09-18 11:27:50 · 595 阅读 · 0 评论 -
IOS 24 实现歌单详情(UITableView)列表
歌单详情列表页整体效果稍微有点复杂,我们进行分部实现,先实现歌单详情里面的歌单列表,使用UITableView来实现。SheetDetailController控制器重写父类的扩展 cellForRowAt方法,创建对应的Cell,并将Item数据绑定到Cell。2.获取data列表数据,并调用UITableView的reloadData(),将数据更新到列表;请求歌单详情接口获取歌单详情里的歌曲列表数据,更新tableView.reloadData()至此,实现了歌单详情里面的歌单列表。原创 2024-09-18 10:33:24 · 1230 阅读 · 0 评论 -
IOS 23 实现通用WebView控制器(WKWebView)
在项目中我们经常会在多个界面使用到WebView,所以本文对WebView进行封装,实现一个通用的WebView控制器。原创 2024-09-05 11:26:33 · 1246 阅读 · 0 评论 -
IOS 22 自定义标题栏(Toolbar)
创建一个自定义控件SuperToolbarView,可以把SuperToolbarView分成左中右三个部分;创建左中右布局,添加到SuperToolbarView中;对外提供相应的方法,将添加到左中右布局的方法暴露出去,最后将SuperToolbarView添加到界面。4)设置SuperToolbarView宽高,并将左中右布局添加到SuperToolbarView中,默认将标题添加到中间布局。封装BaseTitleController,将SuperToolbarView添加到界面。原创 2024-09-05 09:17:10 · 671 阅读 · 0 评论 -
IOS 21 发现界面(UITableView)单曲列表(UITableView)实现
从效果图上面可以看出,单曲列表Cell由一个title + UITableView来实现的,如果看了前面的文章UITableView应该已经很熟悉了,这里需要注意的是,把UITableView内嵌到UITableView中,且需要显示UITableView的全部Item;SongGroupCell 重写父类的扩展 cellForRowAt方法,创建对应的Cell,并将Item数据绑定到Cell。2.获取data列表数据,并调用UITableView的reloadData(),将数据更新到列表;原创 2024-09-04 10:34:52 · 1340 阅读 · 0 评论 -
IOS 20 发现界面(UITableView)歌单列表(UICollectionView)实现
需要注意的是,UICollectionView本身也是一个可滑动的控件,把UICollectionView内嵌到UITableView中,且需要显示UICollectionView的全部Item;由于UICollectionView也是一个列表控件,实现UICollectionView的Cell的流程跟 实现UITableView的Cell的流程基本类似。SheetGroupCell 重写父类的扩展 cellForItemAt方法,创建对应的Cell,并将Item数据绑定到Cell。原创 2024-09-04 09:18:20 · 1615 阅读 · 0 评论 -
IOS 19 发现界面(UITableView)快捷按钮实现
从效果图上面可以看出,快捷按钮Cell由一个水平滑动的View,包含多个Button组成,这里使用UIScrollView包裹水平TGLinearLayout包裹多个ButtonView来实现。DiscoveryController控制器重写父类的扩展 cellForRowAt方法,创建对应的Cell,并将Item数据绑定到Cell。2.获取data列表数据,并调用UITableView的reloadData(),将数据更新到列表;定义按钮数据模型ButtonData,按钮数据是本地写死的按钮列表数据。原创 2024-09-03 11:26:40 · 1177 阅读 · 0 评论 -
IOS 18 发现界面(UITableView)Banner轮播图实现
由于返现界面控制器DiscoveryController和多个界面控制器都继承自BaseLogicController,而且列表UITableView在多个控制器上都需要用到,故将列表使用UITableView统一编写在父类BaseLogicController上,方便统一管理和使用。从发现界面的效果图可以看出,发现界面是一个列表,列表包含了不同的Item,我们可以将 banner部分看成是列表的一个Item(Cell),列表使用UITableView来实现。1.创建UITableView;原创 2024-09-03 10:28:22 · 1965 阅读 · 0 评论 -
IOS 17 基于UITabBarController实现首页TabBar
创建子控制器 DiscoveryController,VideoController,MeController,FeedController,RoomController,继承自BaseLogicController;创建首页MainController继承自UITabBarController就可以实现Tabbar效果。MainController继承自UITabBarController。其余自控制器实现同DiscoveryController。编译能够正常显示首页Tabbar效果。原创 2024-08-28 11:05:39 · 752 阅读 · 0 评论 -
IOS 16 封装网络请求和log打印
本文基于对网络请求框架Moya的二次封装,并实现log打印、loading提示等。原创 2024-08-27 11:56:39 · 825 阅读 · 0 评论 -
IOS 15 实现Toast和小菊花Loading提示
/// 提示/////// 显示提示//背景颜色//标题文字颜色//显示到屏幕顶部//因为显示到中心有点遮挡内容/// 加载提示//菊花颜色//最小尺寸//背景半透明//背景颜色//标题文字颜色//显示对话框//设置对话框文字//详细文字.detailsLabel.text = "请耐心等待"/// 隐藏提示。原创 2024-08-26 16:40:14 · 920 阅读 · 0 评论 -
IOS 14 封装网络请求框架
本文基于,对网络请求框架Moya的二次封装,并实现JSON对象解析等。原创 2024-08-26 14:00:09 · 992 阅读 · 0 评论 -
IOS 13 网络请求和Moya框架
框架文档推荐使用枚举,本文也使用枚举进行定义。//// 网络API//////导入网络框架// MARK: - 实现TargetType协议/// 返回网址/// 返回每个请求的路径default:/// 请求方式default:/// 请求的参数default://不传递任何参数/// 请求头//// 参数相关工具类/////// 返回URL编码的参数///原创 2024-08-23 09:24:11 · 1399 阅读 · 0 评论 -
IOS 12 自定义用户协议对话框
//////// 主色调,小圆角按钮return r/// 主色调,半圆角按钮return r/// 创建只有标题按钮(类似网页连接)return r。原创 2024-08-20 11:02:28 · 978 阅读 · 0 评论 -
IOS 11 通用Base控制器封装
BaseLogicController:本项目的通用逻辑,主要是创建界面布局容器,例如:快速初始化一个四边都在安全区的垂直方向布局;快速初始化四边都在安全区的TableView布局等。BaseCommonController:不同项目可以复用的逻辑,例如:设置背景颜色方法等。BaseTitleController:自定义标题相关,例如:快速添加左侧按钮,右侧按钮。BaseController:把viewDidLoad逻辑拆分为三个方法,方便管理。原创 2024-08-20 09:45:39 · 717 阅读 · 0 评论 -
IOS 10 统一颜色管理和适配深色模式
通过扩展UIColor类来实现//iOS中也提供了命名颜色,例如:.systemBackground,但无法更改他的颜色,Android中就可以根据浅色,深色修改命名的颜色,更方便/// 主色调/// 暗一点 主色调// #pragma mark - 黑色到白色//颜色命名也是很大的问题,关于颜色命名方式讨论:https://www.zhihu.com/question/301985702//以下命名后面的数字,没有实际意思//后面两位是透明度/// 链接颜色/// 主色调,暗一点按钮颜色。原创 2024-08-18 22:01:10 · 839 阅读 · 0 评论 -
IOS 09 R.swift框架和使用方法
R.swift框架主要是实现通过类字段访问字符串,图片,等资源;类似Android那边通过R类访问,好处是有提示,如果缺少资源,直接就是编译错误;OC类似的功能叫R.objc。原创 2024-08-18 20:48:01 · 827 阅读 · 0 评论 -
IOS 08 字符串国际化功能实现
选中项目Project-Info,在Localiztion中,点击加号,添加要国际化的语言,例如默认有英语,这里添加一个中文简体,然后会弹出一个界面,选择要国际化的文件,这里都选择,最后点击完成;虽然应用名称也是字符串格式化,但不能写到Localizable.strings,需要写到InfoPlist.strings文件中。然后上面创建Localizable.strings文件,就可以展开,发现有两个文件,一个是中文简体,一个是英文。运行项目后,在回到桌面,可以看到名称实现了国际化。勾选后会生成两个文件。原创 2024-08-18 19:42:29 · 621 阅读 · 0 评论 -
IOS 07 Swift调用OC源码及OC第三方框架
创建SwiftUseOCTest项目,是一个Swift语言的项目;再创建一个OC类文件,里面有静态方法,实例方法,字段等;然后在Swift项目中调用OC类;像OC类的复杂宏,在Swift类中是无法调用。原创 2024-08-18 15:03:24 · 1637 阅读 · 0 评论 -
IOS 05 OC和Swift混合编程
在真实项目开发过程中,大部分时候我们往往都会使用到OC和Swift混合编程,主要原因如下:老项目是OC语言实现的,但需要引用Swift的框架;新项目是Swift实现的,但需要引用OC的框架,就目前微信SDK,支付宝SDK等都是OC实现的。原创 2024-08-16 09:28:58 · 1577 阅读 · 0 评论 -
IOS 06 OC调用Swift第三方框架
前面文章05讲的是在OC项目中,调用Swift代码,而在真实开发过程中,在OC项目中调用Swift第三方框架场景用的是非常多的,所以我们也了解在OC项目如何使用Swift写的三方框架。原创 2024-08-16 09:52:40 · 2084 阅读 · 0 评论 -
IOS 04 TangramKit 纯代码开发
由于自定义的ItemView左右两端都有控件,所以继承自TGRelativeLayout,更方便实现UI效果。//////init() {///左侧图标}()///右侧图标}()///标题textView.text = "标题"}()懒加载创建自定义View,并添加到页面中title = "设置界面"view.titleView.text = "设置"}()view.titleView.text = "设置"}()//////原创 2024-08-14 18:05:27 · 772 阅读 · 0 评论 -
IOS 03 纯代码封装自定义View控件
/////init() {/// 当视图加入父视图时 / 当视图从父视图移除时调用//添加约束///左侧图标}()///右侧图标}()///标题textView.text = "标题"}()//添加约束,只有添加当前控件,内部的约束在控件内部就添加了view.titleView.text = "设置"}()//////title = "设置界面"//添加约束,只有添加当前控件,内部的约束在控件内部就添加了。原创 2024-08-14 17:19:21 · 692 阅读 · 0 评论 -
IOS 02 SnapKit 纯代码开发
是一个Swift语言写的自动布局框架,可以运行到iOS,Mac系统上;OC版本的框架是,都是出自同一个团队。用这个框架的目的是,用起来比系统自带的API方便,他内部也是对系统API进行了封装。原创 2024-08-13 10:30:40 · 2091 阅读 · 0 评论 -
IOS 01 CocoaPods 安装与使用
CocoaPods是一个依赖管理工具,类似Java语言的Maven,Gradle这样的工具;只是他是管理iOS,macOS等平台项目的依赖而已。原创 2024-08-13 09:35:32 · 592 阅读 · 0 评论