作者:手机用户2502869561 | 来源:互联网 | 2023-05-17 13:08
如果对iOS开发感兴趣,可以来黑马程序员学习iOS:黑马程序员1.1-系统API有没有提供相关的属性或者代理呢?1.2-自定义View作为索引栏1.3-使用NSString显示图片原理
如果对iOS开发感兴趣,可以来黑马程序员学习iOS:黑马程序员
1.1-系统API有没有提供相关的属性或者代理呢?
![这里写图片描述](https://www.#.com/go/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwMzI0MjA1NzQzMjg5P3dhdGVybWFyay8yL3RleHQvYUhSMGNEb3ZMMkpzYjJjdVkzTmtiaTV1WlhRdmRUQXhNekkyTXpreE53PT0vZm9udC81YTZMNUwyVC9mb250c2l6ZS80MDAvZmlsbC9JMEpCUWtGQ01BPT0vZGlzc29sdmUvNzAvZ3Jhdml0eS9Tb3V0aEVhc3Q=)
- 2.UITableView的API中与索引栏相关的代理
![这里写图片描述](https://www.#.com/go/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwMzI0MjEwMjIyMTE3P3dhdGVybWFyay8yL3RleHQvYUhSMGNEb3ZMMkpzYjJjdVkzTmtiaTV1WlhRdmRUQXhNekkyTXpreE53PT0vZm9udC81YTZMNUwyVC9mb250c2l6ZS80MDAvZmlsbC9JMEpCUWtGQ01BPT0vZGlzc29sdmUvNzAvZ3Jhdml0eS9Tb3V0aEVhc3Q=)
![这里写图片描述](https://www.#.com/go/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwMzI0MjEwMzM0MDg3P3dhdGVybWFyay8yL3RleHQvYUhSMGNEb3ZMMkpzYjJjdVkzTmtiaTV1WlhRdmRUQXhNekkyTXpreE53PT0vZm9udC81YTZMNUwyVC9mb250c2l6ZS80MDAvZmlsbC9JMEpCUWtGQ01BPT0vZGlzc29sdmUvNzAvZ3Jhdml0eS9Tb3V0aEVhc3Q=)
1.2-自定义View作为索引栏
- 这种方式是可行的,但是工作量太大,同时该方式也是目前市场上比较常用的方式
1.3-使用NSString显示图片原理
- NSString和图片有一个共同点:在底层都是二进制
- 本篇博客就从简单到复杂,解开字符串显示图片的神秘面纱*
1.3.1-直接在输入法输出表情
![这里写图片描述](https://www.#.com/go/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwMzI0MjEwODI1NDE5P3dhdGVybWFyay8yL3RleHQvYUhSMGNEb3ZMMkpzYjJjdVkzTmtiaTV1WlhRdmRUQXhNekkyTXpreE53PT0vZm9udC81YTZMNUwyVC9mb250c2l6ZS80MDAvZmlsbC9JMEpCUWtGQ01BPT0vZGlzc29sdmUvNzAvZ3Jhdml0eS9Tb3V0aEVhc3Q=)
- 原理探究:为什么NSString能够直接显示键盘敲出的表情符号呢?
- 这主要因为我们敲出的表情属于emoji表情,而emoji表情又属于Unicode编码
1.3.2-使用十六进制的Unicode编码显示表情
- emoji表情代码大全:http://www.fuhaodq.com/biaoqingfuhao/1531.html
- emoji表情本质上其实就是两个字节的十六进制表示的Unicode编码*
![这里写图片描述](https://www.#.com/go/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwMzI0MjExMDIzODczP3dhdGVybWFyay8yL3RleHQvYUhSMGNEb3ZMMkpzYjJjdVkzTmtiaTV1WlhRdmRUQXhNekkyTXpreE53PT0vZm9udC81YTZMNUwyVC9mb250c2l6ZS80MDAvZmlsbC9JMEpCUWtGQ01BPT0vZGlzc29sdmUvNzAvZ3Jhdml0eS9Tb3V0aEVhc3Q=)
![这里写图片描述](https://www.#.com/go/aHR0cDovL2ltZy5ibG9nLmNzZG4ubmV0LzIwMTcwMzI0MjExMTUzNDUxP3dhdGVybWFyay8yL3RleHQvYUhSMGNEb3ZMMkpzYjJjdVkzTmtiaTV1WlhRdmRUQXhNekkyTXpreE53PT0vZm9udC81YTZMNUwyVC9mb250c2l6ZS80MDAvZmlsbC9JMEpCUWtGQ01BPT0vZGlzc29sdmUvNzAvZ3Jhdml0eS9Tb3V0aEVhc3Q=)
1.3.3-使用二进制创建字符串显示自定义图片
- 注意
- 1.这里Unicode表情是两个字节,所以字符串用的是UTF16编码(一个字节byte8个位bit),实际中的编码要根据图片实际的字节数选择编码
- 2.实际开发中,可以让UI把图片设计好,交给后台转成二进制然后直接发给客户端即可,这里我没有服务器环境,所以我就手动拼接了一个本地的二进制
“`objc
//返回索引栏数组
- (NSArray