您的位置:首页 > 文旅 > 美景 > 【TabBar嵌套Navigation案例-自定义tabBar-封装 Objective-C语言】

【TabBar嵌套Navigation案例-自定义tabBar-封装 Objective-C语言】

2024/10/7 0:13:35 来源:https://blog.csdn.net/madoca/article/details/140768686  浏览:    关键词:【TabBar嵌套Navigation案例-自定义tabBar-封装 Objective-C语言】

一、再来说一个自定义tabbar的问题啊,

通知

1.首先呢,这个tabbar,看起来好像效果是实现了,没有什么问题,但是说,从业务逻辑上来讲的话,这样做,是不太好的,

1)首先,我们去创建啊,我们自定义的一个UIView,

通知

UIView里边,有很多子控件,那么这个子控件,应该是写在你这个View里边的,你创建的时候,应该是在View里边的,不应该在外面,在Controller里面去创建控件,这样做是不对的,包括你的点击事件啊,都应该抽出来一个,这个tabbar啊,这个UIView,

通知

2)我们应该自定义一个UIView,然后把里面的一部分代码,都应该写到这个UIView里面,才行,理解我的意思吗,就跟那个tabbarController一样啊,你去加载,你给tabbarController去加载子控制器,

通知

那么,你创建子控制器啊,加载子控制器啊,这些话,都应该写在tabbarController里边,

下面也是一样的,你给tabbar,给我自定义的某一个UIView,去添加5个btn,那么,这5个btn的创建,也应该在这个UIView里面,

2.所以,这个时候呢,我们新建一个View,

在主框架的View文件夹里面,我们去新建一个UIView,

通知

继承的是UIView,叫做HMTabBar,

那么,接下来啊,我们就要抽啊,抽,实际上,说白了,就是把这里边的这一坨代码,剪切到这个HMTabBar里边,

通知

你抽东西的时候,怎么着去抽,你假如说,有一个功能,可能抽的时候,感觉不好写,那么,你就先用这种方式,实现了,

通知

然后,再一个一个往里去搬,

1)我们需要先把这个btn的创建,放到这个里边,

通知

先来看看,btn都做了哪些事情,我们看看这坨代码,都做了哪些事情,

1)首先,我创建了5个btn,

2)然后,每一个btn,给它设置了frame,

通知

这一段儿代码,就是在设置frame,所以这一段儿代码,我应该写在layoutSubview里面,

因为我要设置它子控件的布局,

所以呢,我现在,第一,这个btn,我设置了frame,

2)然后,第二件事儿,我给它设置了图片,

通知

3)第三件事儿,我监听了这个btn,

通知

4)第四件事儿,点击这个btn的时候,我把控制器给切换一下,

通知

我现在做了这四件事儿,

然后呢,我一件一件的往里放,就行了,

1)首先,我创建btn的时候,这一句话,应该写在tabbar里边,

通知

我现在呢,要给tabbar写一个方法,只要我一调这个方法,它就能够帮我自动的创建btn、自动的帮我去设置图片、自动的帮我去监听这个btn,

都在这一个方法里边去写,

这个时候,我现在在HMTabBar.h里边,先来写这么一个方法,

- (void)addButtonWith

我现在要把这两张图片,一块儿去传过来,

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com