- 博客(46)
- 资源 (8)
- 收藏
- 关注

翻译 iOS 设计模式
Ios 设计模式,你可能听说过,但是你真正知道这是什么意思么?大部分的开发者大概都同意设计模式很重要,但是关于这一部分却没有很多的文章去介绍它,我们开发者很多时候写代码的时候也并不重视设计模式.设计模式是在软件设计上去解决普通问题的可重用的方法.他们是是帮助你让所写的代码更加容易理解和提高可重用性的模板.它们还可以帮你创建松散耦合的代码是你能不费很大功夫就可以改变或者替代你的代码中的一部分.
2014-07-23 22:43:46
8371
原创 UIScrollView 的AutoLayout
UIScrollView 和 AutoLayout 使用时经常会出现模糊约束的问题。这是因为scollview 滑动的范围是由contentSize决定的,而这个contentSize 又具体来说是由它view 填充的内容决定的。下面说一下UIScrollview 在AutoLayout 上的使用。
2016-08-05 16:41:15
414
原创 给UITabbar 添加 红色badge数字提醒和红点提醒
工作中经常会遇到给UITabbarController上的TabBar 加数字提醒,下面说说怎么实现的。
2015-10-23 23:26:50
17666
原创 UIButton 设置image ,title和setBackgroundImage
UIButton 设置image ,title和setBackgroundImage
2015-10-23 00:01:06
1085
原创 Reveal 分析App Store 页面布局
使用Reveal 。切换到精品推荐页面。点击Reveal 上右上角的刷新按钮,可以看到页面结构组成。 精品推荐页面 顶部的定时自动滚动图是由UICollectionView(SKUICollectionView)组成的,只有一个一个SKUIShelfCollectionViewCell(重用标示符SKUIShelfReuseIdentifier) ,可神奇的是这UICollectio
2015-10-22 00:42:51
1606
原创 xcode 6 添加pch文件
1.新建新的文件: ⌘cmd+N,选择pch 文件,选择模式如下:iOS/Mac > Other > PCH File > YourProject-Prefix.pch.2.在工程中搜索 Prefix HeaderProject > Build Settings > Search: "Prefix Header".3在"Apple LLVM 6.1" 看到 Prefix Header 这个
2015-08-20 14:02:35
442
原创 FMDB的使用
安装fmdb的官方源代码github地址是https://github.com/ccgus/fmdb。github上基本每一个第三方工具都会有大概介绍它的使用方法,而这个fmdb也不例外。它的安装可以使用CocoaPods,在podfile中加入这个pod 'FMDB'# pod 'FMDB/SQLCipher'进行安装。其实你也可以下载它的压缩包下来,解压后将fmdb文件夹放到你的工程文件中,然
2015-03-31 23:09:49
10798
原创 UICollectionView 详细讲解学习
UICollectionView 和UITableView很像,是APPLE公司在iOS 6后推出的用于处理图片这类UITableView 布局困难的控件,和UITableView 一样,它也有自己的Datasource和delegate。下面详细说下像这种方式的效果. 首先来看看UICollectionView 的DataSource。@protocol UICollectionViewData
2015-03-20 01:19:31
3638
原创 Effective Objective-C 2.0 学习笔记之一
第1条:在类的头文件中尽量少引入其他头文件. (1)用@class 在头文件中进行前向引用,再在实现文件中#import该头文件,解决了两个类相互引用的问题. (2)代理协议(protocol delegate)可用分类(category)进行化解.再不行就把协议单独放在一个文件中,再引入. 第2条:多用字面量语法,少用与之相关类方法. NSNumer 类型:@2 NSArray类型:@[
2015-03-18 01:17:02
1245
原创 XCODE 6下点模拟器击 UITextFiled等不出现键盘
iOS Simulator -> Hardware -> KeyboardUncheck "Connect Hardware Keyboard"
2015-01-28 20:45:36
928
原创 UIButton点击不灵敏的问题.
要检查按钮是否加在了UIImageView上,如果是那就是这个的问题.因为它的UserInteraction属性默认是设为NO的。解决办法.要设置它为YES.例如原来你是UIButton *btnDetail = [[UIButton buttonWithType:UIButtonTypeDetailDisclosure]retain];btnDetail.frame = CG
2015-01-28 20:44:01
4441
原创 返回上一级出现nested pop animation can result in corrupted navigation bar
[self.navigationControllerpopViewControllerAnimated:NO];出现上面的错误是因为pop的时候要确保先让本页面加载完成,即如果在viewDidLoad中加载一个请求,想在成功的时候没有数据时直接pop回来时就会出现混叠不清的情况解决办法:延迟执行pop后的push,或者push 后的pop,即使0.1s都行。如:[self
2015-01-14 18:58:41
1354
原创 UITableView 学习笔记1
一个 UITableView 对象必须有一个delegate 和一个data source,从MVC设计模式中可以知道。这个data source 介于 app的 data model和 table view 之间,而这个delegate,就管理的是table view的外观和行为。UITableViewDataSource 有两个必须的方法。 tableView:numberOfRowsIn
2014-10-20 21:25:37
571
转载 UIWindow 介绍1:概述、作用、主要属性及方法
UIWindow 类是 UIView 的子类,用于管理、协调应用中显示的窗口,其两个最重要的职能就是容器,给 view 提供展示的区域;将事件(例如:点击事件、拖拉事件等)分发给 view。而在视图等级中,UIWindow 就是视图等级中的根 view。而每一个 UIWindow 都有一个窗口等级(属性名:windowLevel),如果应用中同时出现了多个 UIWindow,那么窗口等
2014-05-05 22:43:15
672
转载 UIView的剖析!
前面说过UIViewController,但是UIView也是在MVC中非常重要的一层 。正是因为UIView是Iphone下所有界面的基础,所以官方专门写了一个文档“View Programming Guide for iOS”。通过这个可以很好的了解UIView的功能。 先来看看官方API的解释:The UIView class defines a rectangular
2014-05-05 22:41:20
591
转载 Cocoa Touch事件处理流程--响应者链
Cocoa Touch事件处理流程--响应者链作者:wangzz原文地址:http://blog.youkuaiyun.com/wzzvictory/article/details/9264335转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!一、事件分类对于IOS设备用户来说,他们操作设备的方式主要有三种:触摸屏幕、晃动
2014-05-05 22:39:43
1062
原创 iOS 的UIView 的hitTest的分析
当在一个view上添加一个屏蔽罩,但又不影响对下面view的操作,也就是可以透过屏蔽罩对下面的view进行操作,这个函数就很好用了。 hitTest的用法:将下面的函数添加到UIView的子类中,也就是屏蔽罩类中即可。 -(id)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
2014-05-05 22:38:44
5924
原创 ios的View的AutoresizingMask属性
UIViewAutoresizingNone = 0, UIViewAutoresizingFlexibleLeftMargin = 1 UIViewAutoresizingFlexibleWidth = 1 UIViewAutoresizingFlexibleRightMargin = 1 UIV
2014-05-05 22:11:45
5136
转载 View Controller的生命周期
iOS学习笔记02—View Controller的生命周期一、ViewControllerView Controller用于管理应用的资源,包括管理与之关联的View,与其他ViewController通信和协调。为了保证程序的高效运行,View Controller总是在需要的时候才加载View(通常被称为lazyload),并在不需要或者内存告警的时候卸载视图。
2014-05-05 22:04:26
1058
原创 用c语言判断一个数是否是回文数
今天去面试碰到这个笔试题目,c语言编程实现,没写出来,估计悲剧了,记录下来,以免再错。 回文数是一种神奇的数字,倒序后仍是原来的数字。比如12321,倒过来还是12321,再如33. 我在网上找到一个相对容易理解实现且有效的算法。 就是将数逆转后和原来的值比较就可以了。 经过验证应该是可以的。
2013-03-24 00:41:16
2159
原创 解决电脑网络受限制或无连接造成无法上网的方法
点本地连接右键属性,先点TCP,IP一下在点属性。 再点使用下面的IP地址: 输入IP地址:192.168.1.100 子网掩码:255.255.255.0 默认网关:192.168.1.1 然后点,使用下面的DNS服务器地址输入:xxx.xxx.xxx.xxx【输入对应区域的DNS服务器地址】DNS服务器地
2013-03-07 03:05:52
3501
原创 linux密码忘记
ubuntu11.10好久不用,密码忘记了,折腾了很久,记录下。 1. 启动计算机,然后在启动期间按下 Shift 键以进入GRUB)菜单 2.按键盘上的上下箭头选中有“恢复模式”recover结尾的行,然后按回车。 3.选中Drop to root shell prompt ,即以直接进入root身份的命令提示行。
2012-11-27 19:47:05
494
原创 linux线程池学习网址
1:线程池的原理和连接池的原理http://www.justwinit.cn/post/2355/2:linux下线程池代码blog.youkuaiyun.com/wuhuiran/article/details/18701593:linux线程池的实现http://crocodile.blog.51cto.com/2691566/976844
2012-11-12 20:29:36
436
原创 mysql的学习网址
1:官方入门教程: 第3章:教程 http://dev.mysql.com/doc/refman/5.1/zh/tutorial.html2:入门例子:The MySQL C API 编程实例http://blog.youkuaiyun.com/kunp/article/details/168499 MYSQL C API接口编程简单实例htt
2012-11-12 20:21:40
459
原创 读取ini配置文件
1:发布跨平台INI文件读写API(C版本) V0.2.0(首推,好用)http://www.cppblog.com/dyj057/archive/2012/07/26/37958.html#1851362:用C读取INI配置文件http://blog.youkuaiyun.com/chexlong/article/details/68180173:Linu
2012-11-12 20:06:29
405
原创 linux下libevent编程的好网址
查了以下libevent的用法,挺好的网站收藏总结1让libevent支持多线程 http://www.cppblog.com/converse/archive/2009/01/12/71809.html2:libevent多线程使用事项http://www.cppblog.com/converse/archive/2009/01
2012-11-12 19:51:37
730
转载 用gdb调试程序笔记: 以段错误(Segmental fault)为例
笔记内容:1.背景介绍2.程序中常见的bug分类3.程序调试器(如gdb)有什么用4.段错误(Segmental fault)介绍5.gdb调试入门一、背景介绍这个笔记主要介绍开源的程序调试器(gdb)的入门知识,目的是使unix/linux环境的编程新手能够快速学会使用gdb调试程序的方法,同时也是对我使用gdb的一个经验总结。本文假设你能使用简单的unix/li
2012-11-12 19:41:48
1437
转载 ssh syslog配置
AIX系统中的syslogd是记录系统日志的进程。根据syslogd的配置,它只记录关键性的错误或者调试信息。默认情况下是不错记录的。配置信息默认情况下写在/etc/syslog.conf里,可通过syslogd命令指定一个配置文件。 下面是 /etc/syslog.conf 文件用法的几个示例:要将调试级或以上的所有邮件功能消息记录到文件 /tmp/mailsyslog,可以输入
2012-11-05 18:07:51
2288
原创 使用strace调试linux程序
strace工具被用来显示系统调用。下面简单介绍strace工具的制作和一些常用命令:下载后: tar xjf strace-4.5.15.tar.bz2 cd strace-4.5.15/ 打补丁: patch -p1 配置编译: ./configure --host=arm-linux CC=arm-linux-gcc
2012-09-07 15:58:20
478
原创 远程调试应用程序之gdb+gdbserver
1 下载gdb 下载地址 :http://ftp.gnu.org/gnu/gdb/2 编译gdb和gdbsever tar gdb-7.5.tar.bz2 cd gdb-7.5/ ./configure --target=arm-linux --prefix=/usr/local/arm-gdb -v make 安
2012-09-07 14:58:16
730
原创 调试应用程序之使用core dump
在应用程序中,经常会导致段错误,segment default,我们可以使用二分法一个个打印,或者用gdb 一步步的step进去查看打印,但是这在很大的程序中显得效率很低,这时我们可以使用core dump 来调试查看出差的地方。 core就是核心的意思,这里是内存,dump是倒垃圾的意思,就是将程序中的内存出错的像倒垃圾一样呈现出来。下面简单的显示一下core dump的用法
2012-09-06 11:42:32
651
原创 linux设备驱动程序的编写--将usb鼠标当做按键
USB设备驱动程序的编写:1分配一个struct usb_driver; static struct usb_driver usbmouse_as_key_driver = { .name = "usbmouse_as_key", .probe = usbmouse_as_key_probe, .d
2012-09-01 13:16:18
577
原创 linux设备之输入子系统框架及API
输入子系统:对不同的输入设备进行统一处理的设备驱动程序框架,包括键盘,鼠标,触摸屏等任何的输入设备都可以通过输入子系统的接口注册到内核中。使用它的好处:它提供了用于分发输入报告给用户程序的简单事件(envent)的接口,抽取出了输入驱动程序的通用部分,简化了驱动程序,引入了一致性.简便了设备驱动程序的开发。输入子系统的三层结构: 核心层,具体设备相关的设备层dev和与设
2012-08-26 11:05:10
818
原创 uboot菜单实现全过程
这个菜单其实就是一个uboot中的命令,uboot启动时,如果进入下载模式,就先运行这个命令。 命令的执行内容就是通过串口打印出一个菜单,等待用户输入,再执行相应的动作。 先自己写一个cmd_menu.c的文件,放到common目录下,修改同目录下的Makefile文件,加入编译选项: COBJS-$(CONFIG_CMD_MENU) += cmd_menu.o cmd_menu.c里面的内容:
2012-07-31 23:25:26
2655
FFmpeg Demo for iOS
2017-11-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人