Levey TabBarController:
http://code4app.com/ios/Levey-TabBarController/5048079e6803faea59000000 这个开源的,这个真的很好用,想实现滑动隐藏时,只需要加上#import "LeveyTabBarController.h" 这个头文件 ,然后就可以直接
[self.leveyTabBarControllerhidesTabBar:YESanimated:YES]; 这样即可实现隐藏了,一般人我不告诉他
2.推荐二级页面的图片浏览模式我正在用 http://code4app.com/ios/Photo-Browser/4f6d874f6803faa418000000 这个 ,但还没实现,应该没问题(0625日)
Photo Browser
// Create browser
MWPhotoBrowser *browser = [[MWPhotoBrowseralloc] initWithDelegate:self];
browser.displayActionButton =YES;
//browser.wantsFullScreenLayout =NO;
//[browser setInitialPageIndex:2];
[self.navigationControllerpushViewController:browser animated:YES];
[browser release];
现在问题来了,当点击进去后本来上边的navigation的位置是正确的,但当过一会navigationbar准备隐藏时,这个navigationbat会自动往下移,当再次点击使navigationbar出现时,它的位置还是不对(还是偏下),解决办法:
//browser.wantsFullScreenLayout = NO; 将此处注释掉的部分打开即可(即browser.wantsFullScreenLayout = NO(你没看错,这个地方就是NO,而非YES));
3.向左滑动页面我用的code4app上的这份DEMO: http://code4app.com/ios/MMDrawerController/51b3fd056803fa152e000000
MMDrawerController
在用的时候还是有不少需要注意的及自己总结出来的,下面就先说两点:a.比如说我将一个uinavigationcontroller加入mmdrawer后,可以实现向左滑动,但当点击一级页面进入二级页面后,它却还是可以响应向左滑动的手势,这不是我们所希望的,看了下DEMO,我是这样实现的:在二级页面的viewcontroller里:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.leveyTabBarController hidesTabBar:NO animated:NO];
[self.navigationController setNavigationBarHidden:NO animated:NO];
}
别急,现在问题就又来了,当我们按上面的设完后,进去二级页面确实不可以响应向左滑动的手势了,但当我们按返回按钮返回到一级按钮后,却还是不能响应手势,mygod!
在一级页面的viewcontroller里,实现这个方法
-(void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
//把这段代码放到这个方法里,可以实现进去二级页面后不可以往左滑动,而返回一级页面后就继续可以往左滑动了,但有个疑问是每次在viewwillappear方法里alloc一个viewcontroller,会不会变卡呢
LeftSideViewController *vc = [[LeftSideViewController alloc] init];
[self.mm_drawerController setLeftDrawerViewController:vc];
[self setupLeftMenuButton];
}
OK!反正这样我是暂时搞定了