iOS TabbarViewController隐藏标签栏

我有一个viewcontroller,它实现UITabbarViewController,我想隐藏标签栏并覆盖它自己, self.tabBar.hidden = YES; 标签栏消失,但在视图的底部有一个空白区域(蓝色的)。 我不想要空白区域,我该如何解决这个问题? 谢谢。 编辑:蓝色区域是: self.view.backgroundColor = [UIColor blueColor];

如何为特定文件添加ARC?

我创build了一个没有ARC的项目。 我想在我的项目中使用第三方SDK 。 该SDK附带ARC支持。 所以我想为第三方文件添加ARC 。 我可以通过将这个标志添加到构build阶段(如-fno-objc-arc来禁用所有"MYProject"文件的ARC 。 但是我可能会使用大量的文件。 所以最好只为特定的SDK添加ARC 。 那么如何在XCode Project中为单个或特定的SDK文件添加ARC支持? 对于实例:我想使用网格视图。 我在我的项目中添加了GMGridView ,它带有ARC支持。

链接一个新的视图控制器到故事板?

可能有一个简单的解决scheme,但我无法弄清楚。 我正在使用界面的故事板。 我从一个标签栏控制器开始,但在用户被允许使用该应用程序之前,用户必须通过在开始时模式推送的loginview来validation自己。 我想要在同一个故事板上configurationloginview,但是我不能缝合来弄清楚如何链接故事板上的视图控制器和我的代码。 我做了什么: 创build一个新的UIViewController子类通过文件>新build>新文件。 在故事板中拖放一个新的UIViewController 在自定义类选项卡中设置类 拖动一个UILabel用于testing目的。 跑 无标签…

dismissViewControllerAnimated VS popViewControllerAnimated

我想知道他们有什么不同。 当我可以打电话 [self dismissViewControllerAnimated:YES completion:nil]; 什么时候该打电话 [self.navigationController popViewControllerAnimated:YES]; 根据苹果的文档:dismissViewControllerAnimated的意思是“解除接收器呈现的视图控制器”。 但是我总是不能通过这种方法解雇视图控制器。

删除核心数据版本xcdatamodel文件

我已经在我的iOS应用程序中创build了一个版本化的核心数据模型,并且有几个版本创build到目前为止(.xcdatamodeld包中的几个.xdatamodel文件)。 在发布应用程序之前,我正在考虑删除这些旧版本,这样我就可以从一个简单的数据模型开始 – 在这个阶段数据丢失不是问题。 这可能吗? 如果不简单地删除所有Core数据文件并重新创build一个新模型,最好的办法是实现这个目标。

iOS – 在窗口中获取视图的位置?

我有一个UIView,它被点击后显示一个popup窗口。 popup窗口需要被添加到主UIWindow,以确保它在所有其他的顶部。 我想这个popup窗口的位置是相对于我的UIView,所以我需要知道我的UIView在窗口中的相对位置。 问题:当UIView不是直接在UIWindow中(它在我的viewController的视图内)时,如何才能在UIWindow中findUIView的位置?

dynamic获取键盘的框架

是否有可能dynamic地获得键盘的框架,实际上是它的高度? 因为我有一个UITextView ,我想调整它的高度根据键盘框架的高度,当键盘的input方法改变。 如您所知,不同的input方法可能会有不同的键盘框架高度。

我应该修复Xcode 5的“语义问题:未声明的select器”吗?

我试图用Xcode5升级我的应用程序,但在第三方库(即MagicalRecord)中遇到了一些“语义问题”。 “解决”这个最快捷的方法可能是使用: #pragma GCC diagnostic ignored "-Wundeclared-selector" (来自: 如何摆脱“未声明的select器”警告 ) 编译器指令,但我的直觉感觉说这不是做这件事的恰当方法。 带有上述错误的小代码示例: + (NSEntityDescription *) MR_entityDescriptionInContext:(NSManagedObjectContext *)context { if ([self respondsToSelector:@selector(entityInManagedObjectContext:)]) { NSEntityDescription *entity = [self performSelector:@selector(entityInManagedObjectContext:) withObject:context]; return entity; } else { NSString *entityName = [self MR_entityName]; return [NSEntityDescription entityForName:entityName inManagedObjectContext:context]; } } entityInManagedObjectContext:方法没有在任何地方定义。 任何build议如何最好地解决这些types的错误,在此先感谢?!

UIImageView上的手势识别器(滑动)

我正在尝试使用此代码扫描UIImageView时的NSLog,但由于某种原因它不起作用。 任何想法 ? @implementation ViewController – (void)viewDidLoad { [super viewDidLoad]; UIImage *image = [UIImage imageNamed:@"image2.png"]; UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; imageView.frame = [[UIScreen mainScreen] bounds]; [self.view addSubview:imageView]; UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)]; [recognizer setNumberOfTouchesRequired:1]; [imageView addGestureRecognizer:recognizer]; } – (void)rightSwipeHandle:(UISwipeGestureRecognizer*)gestureRecognizer { NSLog(@"right swipe"); }

在8.3中更改iOS UIAlertController粗体button

UIAlertController带有两个样式设置的button: UIAlertActionStyle.Cancel UIAlertActionStyle.Default 在iOS 8.2中,取消button不是粗体,默认为粗体。 在iOS 8.3中,他们已经轮换了 你可以看到苹果自己的应用程序,例如设置>邮件>添加账户> iCloud>input无效数据,然后在8.3上显示: 不支持的Apple ID 了解更多(粗体)确定(非粗体) 而另一方面则是8.2。 任何解决方法,使它像8.2再次。 它为什么改变了?