[IOS开发]模仿微博的客户端(1)

原创 2015年11月18日 20:48:20

1.在 AppDelegate 文件中设置程序的根控制器

2.创建 tabbar 控制器

2.1在 DIDTabBarController 文件中创建四个子控制器,并给其设置标题和图片

2.2由于要将系统默认渲染的图片样式改成自定义的,利用 imageWithRenderingMode 方法,写了一个分类UIImage+image

2.3一共需要创建4个控制器,代码不写重复的代码,所以这个时候抽取了一个创建单个 tabbarItem 的方法- (void)everyChildViewControllers:(UIViewController *)vc andImage:(UIImage *)image andImageSel:(UIImage *)imageSel andTitle:(NSString *)title , 并且由于添加标题的时候会输入中文,会导致后面的 UIImage 输入的时候没有提示,所以一般将设置标题的选项放在最后

2.4想要将系统的默认tabbar 蓝色字体改成橘色的,想要在全局的地方更改,在类方法 initialize 中更改(程序启动的时候会讲所有的类都加载到内存中,所有类里面的 load 方法会先于程序的 main 方法执行)

3.创建navigation控制器

3.1在创建每个子控制器的方法中,可以创建navigationController,将每个控制器设为navigation的根控制器

3.2想要给navigation添加标题,需要在每个子控制器中设置,并且左右两侧的按钮也同样需要在子控制器中设置,毕竟每个控制器需要的选项是不一样的

4.设置首页界面

4.1先创建一个tableViewController(消息和发现界面同样都是tableViewController,可以同时创建)

4.2设置导航栏的左右两侧的navigationBarItem,因为我们默认和高亮的状态都需要设置,系统无法满足我们的需求,所以在创建一个UIImage的分类,先创建一个按钮,设置好不同状态的图片,再转为UIBarbuttonItem(通过initWithCustomView方法),记住不能忘记设置button的尺寸,否则button不会显示

4.3中间标题处的也同样是一个按钮,通过navigationItem.titleView属性,将button添加上去

4.4中间的按钮也是需要自定义的按钮,因为正常时候图片和文体是左右位置,我们需要将文字放在左边,所以自定义按钮,创建button的时候用创建自定义按钮的类方法buttonWithType:UIButtonTypeCustom

4.5这个按钮只有一个,在自定义的button的类中可以将不同状态的图片设置好于initWithFrame方法中以及被选中时候的背景图片

4.6在layoutSbuViews方法中交换文字和图片的位置,这里也可以写个分类,用来设置x和y值,因为x本不可以赋值,需要通过frame赋值,很是麻烦

4.7在setFrame方法中设置frame,让按钮的尺寸大一点,这样被点击的时候,后面背景的尺寸会打一写

4.8因为没有给图片和文字指定尺寸,可以再set图片和文字的方法中加一句sizeToFit方法

5.接下来创建按钮弹下来的view

5.0首先了解一下这个view的构成,首先后面是一个全屏的view,然后上面有一个imageView用来显示黑色区域,imageView中添加一个view用来连接tableView的,tableView也会赋值给这个view,设置tableView的文字,让后让tableView和cell的颜色都为无色即可

5.1先创建一个弹出框的类(DIDPopView),以及它的控制器(DIDPopViewController),因为一定会有,所以一起创建就好了

5.2定义一个类方法popView,将其初始化,使其frame等于整个屏幕,这样为之后任意点击,关闭popview做准备

5.3创建一个imageView(containView),将背景图片设置拉伸不变形的方式(此处建了一个分类UIImage+resizable)

5.4将图片的交互模式打开

5.5imageView要添加到popView的自视图上

5.6重写layoutSubViews的方法,让里面的内容,距离边框有一点距离

5.7在.h文件中创建contentView的属性,为了与控制器产生联系

5.8重写contentView的setter方法,将contetView添加到imageView上去

5.9设置代理,写一个协议并在首页的控制器实现代理方法,让其在点击屏幕的时候能够将弹下来的View移除

5.10实现View上面的内容,在首页的控制器中,将popViewController的View赋值给popView的cententView的属性,这样就建立起了他们之间的连接

5.11popViewController是继承于tableViewController的,按照tableView的实现方法,在viewDidload方法中可以先创建一个数组,用于存储内容,此处为了测试,可以先填上内容

5.12然后实现有几行的方法,每个cell现实的内容的方法,必要忘了将tableView和cell的颜色设置为无色,不要设置为没有颜色,要设置为无色(clearColor),将tableView的分割线也要消除

关于我用到的一些分类,可以到这里查看
http://download.csdn.net/detail/aa603020460/9280817

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

IOS新浪微博客户端开发练习知识点总结(一)

1.获得项目中info.plist文件的内容 1> [NSBundle mainBundle].infoDictionary 2> 版本号在info.plist中的key:kCFBundleVer...

iOS微博第三方客户端开发笔记一:申请oAuth2.0认证

ios微博第三方客户端小Demo开发笔记。OAuth2.0认证流程。使用UIWebView以及AFNetworking框架。

新浪微博开放平台开发-android客户端(1)

引言 最近不是太忙,花了一些时间学习android的应用开发。经过两个星期的学习,学习的同时还写了很多的demo示例,可以从基本控件及基本动画效果等示例demo集合大放送,持续更新下载。 从这个...

iOS7 新浪微博客户端开发 (OAuth2.0认证篇)

本人最近开始了iOS的学习,zuo

1.腾讯微博Android客户端开发——OAuth认证介绍

转自:http://blog.csdn.net/coolszy/archive/2011/06/02/6461067.aspx 腾讯微博是一个由腾讯推出,提供微型博客服务的类Twitter网站。在腾讯...

1.腾讯微博Android客户端开发——OAuth认证介绍

1.腾讯微博Android客户端开发——OAuth认证介绍 分类: 腾讯微博Android客户端 2011-06-02 13:04 2735人阅读 评论(10) 收藏 举报 ...

ios小项目——新浪微博客户端总结

这个demo很多人下载后说有错误 运行不了什么的 但是又不贴出错误 我怎么知道你哪里出了问题 有很多人都会自己动手去掉错误 为什么有些人就只会在那里说运行不了 这个demo只是一个入门的小练习而已 主...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)