再造轮子之网易彩票第二季(IOS篇bysixleaves)sixleaves

接着我们思考如何进行封装。前面已经将过了为什么要封装,和封装达到的效果。这里我们主要有两种封装方式,分别是站在不同的角度上看待问题。虽然角度不同但是内部最核心的思想还是一样的,就是屏蔽控件内部是如何构造的细节,为外界提供简单容易理解的接口。方式一:SWPTabBar屏蔽所有内在细节,只需提供要创建的控件个数。就可以创建出SWPTabBar的大体框架。接着有几个方法可以用来设置TabBar内部按钮的数据。简单来说只需提供1.设置按钮个数。2.设置按钮数据的接口。

注意:那么我们如何保证接口的健壮性,要知道如果有用户反复或多次设置按钮个数,那么我们要做到的效果是重新构造TabBar新的内部,而不能造成按钮的重复累加。这也是我们设计接口时候要考虑的一点,该接口是否方便使用,时候多次使用会出错等等许多细节。并不是所设计接口就是随便的提供个方法的调用这么简单,这需要经验的积累。

首先看下面代码和注释:

分析:1.首先我们可以选择在initWithFrame中添加控件。为什么不在init呢,因为用户可能会直接调用initWithFrame方法,这样就不正确了。但是init方法其实还会调用initWithFrame方法,所以我们重写initWithFrame方法是最保险的方式。2.必须在确定了SWPTabBar的尺寸之后再计算其子控件的位置和尺寸,所以我们重写layoutSubViews方法。分析中的1和2代码分别如下:

以下代码为重写layoutSubViews实现内部子控件的位置尺寸的确定。

修改后的代码如下

-(instancetype)initWithFrame:(CGRect)frame{if(self=[superinitWithFrame:frame]){}returnself;}-(void)setNumberOfBarButton:(NSUInteger)numberOfBarButton{_numberOfBarButton=numberOfBarButton;//先删除存在的按钮[selfclear];//先添加按钮[selfsetup];}-(void)clear{[self.subviewsmakeObjectsPerformSelector:@selector(removeFromSuperview)];}效果图如下:

3.改进我们知道,UITabBarController中的几个子控制器是UINavagationController,当点击下面SWPTabBar控件中的按钮时候,进行子控制器的切换,当点击UINavigationController上面的按钮进行跳转时候,实际上是UINavigationController对其子控制器进行压栈操作。现在我们想实现的效果是,当UINavigationController切换其子控制器的时候,新的控制器不显示出UITabBar,我们可以通过SB中操作来勾选新控制器的HideBarButtom…来对UITabBar进行隐藏,然而我们自定义的SWPTabBar并不是UITabBar的子控件而是其兄弟控件,所以设置的效果是作用在UITabBar上,又因为SWPTabBar比较后面添加,盖在了上面,所以是看不到效果的。此时我们只需要换种思路,把SWPTabBar直接加进UITabBar控件中,并完全覆盖它即可实现这样的效果。

-(void)viewDidLoad{[superviewDidLoad];SWPTabBar*tabBar=[[SWPTabBaralloc]init];tabBar.frame=self.tabBar.bounds;tabBar.numberOfBarButton=5;tabBar.delegate=self;[self.tabBaraddSubview:tabBar];}

THE END
1.(一分钟科普)彩票赚钱软件平台下载彩票赚钱软件平台下载【→⑥⑧④-⑤③④】【→k⑧⑦⑥⑤cc】【→k⑧⑦⑥⑤vip】【域名手动在浏览器打开】【全网第一】【誉响彩界】【问鼎巅峰】成功之路充满挑战和困难,但只要坚持走下去,就会看到胜利的曙光。无论遇到什么困难,都要坚信自己的能力,https://www.sohu.com/a/831137512_122133122
2.能赚钱的彩票软件/官方网站IOS(2024已更新)小花金服是提供科技服务和支持的第三方公司,利用生物特征识别技术,大数据风控模型,结合智能能赚钱的彩票软件机器学习方法,以及其他金融科技方面的优势为机构推荐优质的借款客户,并经过机构风控审核通过后推荐给出借人,小花钱包不保证推荐借款客户百分百通过机构的风控审核。作为金融科技服务商,小花钱包不发放贷款,不向借款人https://www.gfan.com/gftcpqedyu.html
3.再造轮子之网易彩票第一季(IOS篇bysixleaves)在网上看了别人做的模仿网易彩票的项目, 于是也跟着用自己的想法做了一篇。 写这篇博客的目的, 在于UI综合的一次小练习, 同时总结和串联其各个控件之间的应用、封装思想等。考虑到有人上不了github, 代码会在最后一次性发到百度云盘, 敬请关注 工欲善其事, 必先利其器 https://blog.csdn.net/weixin_30381317/article/details/97593515
4.苹果手机赚钱软件排行榜?2024年最新赚钱软件排行利用苹果手机赚钱已成为许多人增加额外收入的新途径。2024年最新苹果手机赚钱软件排行榜为您揭晓,以下十款软件凭借其独特的功能和良好的用户体验,成为了用户心目中的赚钱神器。 第一名、趣闲赚 指数:☆☆☆ 类型:任务类型 特点:任务种类丰富,操作简单,收益稳定。 介绍:https://www.jianshu.com/p/9428831c69a0
5.免费下载安装iOS幸运彩票App,抓住幸运一刻!哔哩哔哩-, 视频播放量 0、弹幕量 0、点赞数 0、投硬币枚数 0、收藏人数 0、转发人数 0, 视频作者 828YtcaUq9, 作者简介 ,相关视频:婉儿别闹 这么多 弄了这么多 噗呲,用傻笑来掩饰一切的尴尬!,【行车记录】如果没有路怒,世界该多么美好,猫猫被摸屁屁了也是会害怕的!!!,https://www.bilibili.com/video/BV1gi42127c5