摘要: 今天就讲下UIScrollView的一些事情,这个可以拖动的组件无论在应用还是游戏开发都会经常用到,所以我们就一定要更加熟悉它了。下面我们开始下手咯。(1)初始化一般的组件初始化都可以alloc和init来初始化,上一段代码初始化。view plainUIScrollView *sv =[[UIScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0,self.view.frame.size.width, 400)];一般的初始化也都有很多方法,都可以确定组件的Frame,或者一些属性,比如UIButton的初始化可以确定Button的类型。当然, 阅读全文
posted @ 2014-03-24 20:14 shaneZhang 阅读(762) 评论(0) 推荐(0) 编辑
摘要: 今天看了下唐巧的博客,发现了这样一种宝贝呀,哈哈,分享一下命令行工具,brew cask是一个用命令行管理Mac下应用的工具,它是基于homebrew的一个增强工具。brew cask install qqbrew cask install google-chrome brew cask install evernote这样就安装了三个应用,方便把.哈哈.安装homebrewruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"之后执行brew doctor命令可以看看homeb 阅读全文
posted @ 2014-03-06 22:12 shaneZhang 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 1 我们平常使用视图都是在控制器中加载各种视图,但是有时候一个单独的视图,弄一个控制器未免有些显得太沉重了,所以我们现在来创建一个带xib加载视图的自定义视图2 创建一个视图类集成uiview3 创建一个同名的xib文件然后调整下大小4在xib中将视图的类绑定到刚刚创建的那个自定义类中5 在.m文件中写入一个加载nib文件的类方法如以下格式// 加载xib方法实例化评价视图+ (DishesEvaluateView *)instanceEvaluateView{ NSArray* nibView = [[NSBundlemainBundle] loadNibNamed:@"Dishe 阅读全文
posted @ 2014-03-03 16:42 shaneZhang 阅读(592) 评论(0) 推荐(0) 编辑
摘要: 关于ios内存管理。在开发过程中,内存管理很重要,我简单说明一下。1.正确用法UIView*v = [[UIViewalloc]init]; //分配后引用计数为1[self.viewaddSubview:v];//这儿引用计数加1,为2[vrelease];//这儿引用计数为1最后系统在回收self.view的时候,会先回收其subView,所以v会被自动回收2.如果v是类的成员变量,写了如下代码,不需要再在类的dealloc方法里[vrelease];v =[[UIViewalloc]init];[self.viewaddSubview:v];[vrelease];如果在dealloc里调 阅读全文
posted @ 2014-02-25 11:39 shaneZhang 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 如果你能够真正的理解autorelease,那么你才是理解了Objective c的内存管理。Autorelease实际上只是把对release的调用延迟了,对于每一个Autorelease,系统只是把该Object放入了当前的Autorelease pool中,当该pool被释放时,该pool中的所有Object会被调用Release。 [1]在Iphone项目中,大家会看到一个默认的Autorelease pool,程序开始时创建,程序退出时销毁,按照对Autorelease的理解,岂不是所有autorelease pool里的对象在程序退出时才release, 这样跟内存泄露有什么区别. 阅读全文
posted @ 2014-02-14 18:21 shaneZhang 阅读(162) 评论(0) 推荐(0) 编辑
摘要: NSString 转换成NSData 对象NSData* xmlData =[@"testdata" dataUsingEncoding:NSUTF8StringEncoding];NSData 转换成NSString对象NSData* data;NSString*result =[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];NSData 转换成char*NSData*data;char*test=[data bytes];char* 转换成NSData对象byte* tempData 阅读全文
posted @ 2014-02-13 20:25 shaneZhang 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 1,转化的方法为 NSString*timeSp = [NSStringstringWithFormat:@"%d", (long)[localeDatetimeIntervalSince1970]]; NSLog(@"timeSp:%@",timeSp);//时间戳的值2,把获取的时间转化为当前时间NSDate*datenow = [NSDatedate];//现在时间,你可以输出来看下是什么格式 NSTimeZone*zone = [NSTimeZonesystemTimeZone]; NSIntegerinterval = [zoneseconds 阅读全文
posted @ 2014-02-12 20:43 shaneZhang 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 今天遇到了Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]这个错误,一直也没有百度,不料想却弄了一个下午,唉,早知道就百度一下了,呵呵。遇到这个问题的原因是tableView的这个方法返回了空的值,所以出错了-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath这个函数的返回值是个null!!That's probably why[UITableV 阅读全文
posted @ 2014-02-09 20:18 shaneZhang 阅读(961) 评论(0) 推荐(0) 编辑
摘要: 后天就要回家过年了,明天好好准备一下,shane祝福大家新年快乐,呵呵。 阅读全文
posted @ 2014-01-24 20:30 shaneZhang 阅读(84) 评论(0) 推荐(0) 编辑
摘要: mac的一款代码比较工具推荐,汉化版的哦,推荐使用.。 阅读全文
posted @ 2014-01-22 17:57 shaneZhang 阅读(1719) 评论(0) 推荐(0) 编辑