ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

[iOS开发]知乎日报第一周总结

2021-10-24 16:05:29  阅读:275  来源: 互联网

标签:知乎 bar nil 第一周 self iOS selector bar2 UITabBarAppearance


已完成

  1. 首页的基本页面的搭建。
    效果图:
    请添加图片描述
    可以看到和实际还是有一定差距的,正版的就是要美观很多,而且人家图片下面有渐变。。。
    请添加图片描述
    尚未加入头部标题随时间改变的功能。
  2. 实现了下拉刷新
    效果图:
    请添加图片描述
    但没有添加请求数据时的动画。在刷新这里还要再多改进。
  3. 简单的布局了“我的”界面。
    效果图:
    请添加图片描述

遇到的问题

  1. 在view和controller之间传值时,我使用了通知传值,后来发现程序接受通知时接收了多次
- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
//    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(pressHead:) name:@"pressHead" object:nil];
//    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getBefore:) name:@"getBefore" object:nil];
}
//在这里注册会出现问题,因为页面多次出现会导致注册了多次,放到viewDidLoad就好了
  1. iOS15以上的手机导航栏和状态栏之前设置的颜色等属性都不起作用了,滚动的时候才能变成正常的颜色,经确认,得用 UINavigationBarAppearance 和 UITabBarAppearance 这两个属性对导航栏和状态栏设置才能生效。参考博客:大佬博客
    示例代码:
    if (@available(iOS 15.0, *)) {
        UINavigationBarAppearance * bar = [UINavigationBarAppearance new];
        bar.backgroundColor = [UIColor blueColor];
        bar.backgroundEffect = nil;
        self.navigationController.navigationBar.scrollEdgeAppearance = bar;
        self.navigationController.navigationBar.standardAppearance = bar;
        
        UITabBarAppearance * bar2 = [UITabBarAppearance new];
        bar2.backgroundColor = [UIColor whiteColor];
        bar2.backgroundEffect = nil;
        self.tabBarController.tabBar.scrollEdgeAppearance = bar2;
        self.tabBarController.tabBar.standardAppearance = bar2;
    } else {
        // Fallback on earlier versions
    }
  1. 在使用UITableView时,没有设置每个cell的高度,而是使用Masonry自动撑开。
  2. 在更新旧内容的时候,我是在scrollViewDidScroll:中设置的更新,为了防止一下子更新好几次,设置了一个BOOL类型的变量,再使用KVO检测是否更新,来规避这个问题。

标签:知乎,bar,nil,第一周,self,iOS,selector,bar2,UITabBarAppearance
来源: https://blog.csdn.net/weixin_52192405/article/details/120934657

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有