如何将一个字符串@"2012-12-21"转换成NSDate模式
新的SDK貌似不再支持 [NSDate initWithString]这个方法
那么现在应该如何转换呢,以下代码
NSString --> NSDate:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate *tempDate = [dateFormatter dateFromString:@"2012-12-21"];
NSDate --> NSString:
NSDate *date = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSString *dateAndTime = [dateFormatter stringFromDate: date];
今日关于自定义UITabBarController的CustomBar的类库,
遇到一系列诡异的动画效果以及之前没有注意的问题
首先,CustomBar 继承了UITabBarController
并且拥有相应的显示 和 隐藏 等方法
方法展示如下
// 隐藏tabbar - (void) hideCustomTabBar{ for(UIView *view in self.view.subviews){ if([view isKindOfClass:[UIImageView class]]||[view isKindOfClass:[MKNumberBadgeView class]]||[view isKindOfClass:[UIButton class]]){ view.hidden = YES; } } slideBg.hidden=YES; }
- (void) showCustomTabBar{ for(UIView *view in self.view.subviews){ if([view isKindOfClass:[UIImageView class]]||[view isKindOfClass:[MKNumberBadgeView class]]||[view isKindOfClass:[UIButton class]]){ // [UIView beginAnimations:nil context:nil]; // [UIView animateWithDuration:0.3 animations:nil]; view.hidden = NO; } } slideBg.hidden=NO; }
在调用上面的隐藏方法的时候,并不能将tabbar全部隐藏,还留下一条白色不可用区域(tabbar区域)。
如何将其全部隐藏呢?除了调用上述隐藏方法之外,还需要在push的时候调用
hidesBottomBarWhenPushed方法,代码如下
ReadViewController *read = [[ReadViewController alloc] init]; read.hidesBottomBarWhenPushed = YES; [self.navigationController pushViewController:read animated:YES]; [read release];
这样就能将其全部隐藏了
---------------------------------------以下是本人遇到的匪夷所思的问题------------------
如果你在隐藏tabbar的页面中(举个例子,你从文章列表页push到文章阅读页,为了用户阅读体验较好,你需要用以上方法隐藏tabbar,但是在阅读之前,你还需要判断用户是否登陆、或者说是否拥有阅读该篇文章的权限。)这个时候你若想用presentModalViewController的方式弹出登陆页面,那么轻无比将 上述显示tabbar方法中的的那两行已注释掉的代码,务必进行注释,不然在用户进行dismissModalViewControllerAnimated的时候,tabar会已诡异的方式从屏幕的最上方滑下来。注释掉之后虽然问题初步解决,但我始终不明白的额是为什么这个tabbar会跑到上面去。