2020-08-17准备面试自我介绍中的知识点

2020-08-20  本文已影响0人  哎一古成社长

1、UITableVIew和UICollectionView的区别?

  UICollectionView是tableview的一个升级版,能展示更自定义化的样式。
  比如,如果瀑布流的视频列表,左边顺势一列视频,右边一列,左右是不对齐的,没法把整个一行作为一个cell来实现。针对这类情况,提出的CollectionView。

未解决的疑惑:
- UICollectionViewCell为什么和tableCell的继承来源不同?
- 二者的复用机制有什么不同吗?导致Collection必须先注册才能使用?

2、如何自定义TableViewCell的删除按钮的?

  在布局cell的时候,添加了一个button控件,然后设置大小,未选中和选中的title,以及颜色。通过layer设置了一下按钮的圆角和边框。
  然后通过target Action给 按钮添加点击时执行的方法。
  因为想要实现的效果是,类似实际中的新闻应用通常会在叉掉一个新闻的cell时候,弹出一个浮窗,提供一些选项,比如说不感兴趣,举报,拉黑屏蔽等选项。

3、为什么要将网络数据封装为类?是如何封装的?本地Cache可能涉及什么问题?如何存储到磁盘cache?

我发现这里涉及到的内容其实是”数据持久化“,不是一个简单的如何把文件写如cache文件夹的过程。

4、KVO和通知的区别?进而涉及到对象之间的通信机制,还有block和delegate?

答:

- (void)setValue:(id)value
{
    [self willChangeValueForKey:@"key"];
    
    [super setValue:value];
    
    [self didChangeValueForKey:@"key"];
}

还可能引申出来的是代理的相关问题,以及代理和KVO、通知的比较。
然后还有,什么是KVC,KVC和KVO的比较

关于三者的优势分析:
https://blog.csdn.net/dqjyong/article/details/7685933?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.channel_param

KVC和KVO的关系网上并不明确,这篇帖子,作者讨论了自己的想法并进行了实践,是否正确我暂时还不理解。
https://www.jianshu.com/p/a0cf1b450371

上一篇 下一篇

猜你喜欢

热点阅读