Questions tagged «objective-c»

仅在有关Objective-C功能或取决于语言代码的问题上使用此标记。标签[cocoa]和[cocoa-touch]应该用于询问Apple的框架或类。使用相关标签[ios],[macos],[apple-watch]和[tvos]来解决特定于这些平台的问题。


30
当有键盘时如何在开始编辑时使UITextField向上移动?
使用iOS SDK: 我有一个UIView带有UITextFields的键盘。我需要它能够: UIScrollView提起键盘后,允许滚动的内容以查看其他文本字段 自动“跳跃”(通过向上滚动)或缩短 我知道我需要一个UIScrollView。我曾尝试将我的类更改UIView为a,UIScrollView但仍然无法向上或向下滚动文本框。 我需要a UIView和a UIScrollView吗?一个人会进入另一个人吗? 为了自动滚动到活动文本字段,需要实现什么? 理想情况下,将在Interface Builder中完成尽可能多的组件设置。我只想编写所需的代码。 注意:我正在使用的UIView(或UIScrollView)由标签栏(UITabBar)调出,该标签栏需要正常运行。 编辑:我只是在键盘出现时添加滚动条。即使不需要它,我也觉得它提供了一个更好的界面,因为例如,用户可以滚动和更改文本框。 UIScrollView当键盘上下移动时,我可以在更改框架大小的地方使用它。我只是在使用: -(void)textFieldDidBeginEditing:(UITextField *)textField { //Keyboard becomes visible scrollView.frame = CGRectMake(scrollView.frame.origin.x, scrollView.frame.origin.y, scrollView.frame.size.width, scrollView.frame.size.height - 215 + 50); //resize } -(void)textFieldDidEndEditing:(UITextField *)textField { //keyboard will hide scrollView.frame = CGRectMake(scrollView.frame.origin.x, scrollView.frame.origin.y, scrollView.frame.size.width, scrollView.frame.size.height + 215 - 50); //resize …

30
在视图控制器之间传递数据
我是iOS和Objective-C以及整个MVC范例的新手,但我坚持以下几点: 我有一个充当数据输入表单的视图,我想给用户选择多个产品的选项。产品在另一个视图上以列出,UITableViewController并且我启用了多个选择。 我的问题是,如何将数据从一个视图传输到另一个视图?我将把选择保留UITableView在一个数组中,但是如何将其传递回先前的数据输入表单视图,以便在提交表单时将其与其他数据一起保存到Core Data? 我到处逛逛,看到有人在应用程序委托中声明了一个数组。我读了一些有关Singletons的内容,但不了解它们是什么,并且读了一些有关创建数据模型的知识。 什么是执行此操作的正确方法,我将如何处理?


27
如何对带有自定义对象的NSMutableArray进行排序?
我想做的事情看起来很简单,但是我在网上找不到任何答案。我有一个NSMutableArray对象,可以说它们是“人”的对象。我想NSMutableArray按Person.birthDate 排序,这是一个NSDate。 我认为这与这种方法有关: NSArray *sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(???)]; 在Java中,我可以使我的对象实现Comparable,或者将Collections.sort与内联自定义比较器一起使用...实际上,您如何在Objective-C中做到这一点?

19
performSelector可能会导致泄漏,因为其选择器未知
ARC编译器收到以下警告: "performSelector may cause a leak because its selector is unknown". 这是我在做什么: [_controller performSelector:NSSelectorFromString(@"someMethod")]; 为什么会收到此警告?我知道编译器无法检查选择器是否存在,但是为什么会导致泄漏?以及如何更改我的代码,以便不再收到此警告?

23
如何检查一个字符串在Objective-C中是否包含另一个字符串?
如何检查字符串(NSString)是否包含另一个较小的字符串? 我希望有这样的东西: NSString *string = @"hello bla bla"; NSLog(@"%d",[string containsSubstring:@"hello"]); 但是我能找到的最接近的是: if ([string rangeOfString:@"hello"] == 0) { NSLog(@"sub string doesnt exist"); } else { NSLog(@"exists"); } 无论如何,这是查找一个字符串是否包含另一个字符串的最佳方法吗?

29
Objective-C中连接NSString的快捷方式
stringByAppendingString:在Objective-C中,是否有用于()字符串连接的快捷方式,或者NSString是通常使用的快捷方式? 例如,我想做: NSString *myString = @"This"; NSString *test = [myString stringByAppendingString:@" is just a test"]; 更像是: string myString = "This"; string test = myString + " is just a test";


14
Objective-C中的常数
我正在开发一个Cocoa应用程序,并且使用常量NSStrings作为存储我的首选项键名的方法。 我知道这是个好主意,因为如果需要,它可以轻松更改键。 另外,这就是整个“将数据与逻辑分离”的概念。 无论如何,有没有一种好的方法可以使整个应用程序一次定义这些常量? 我敢肯定有一种简单而智能的方法,但是现在我的课程只是重新定义了他们使用的课程。

17
如何从Swift调用Objective-C代码?
在Swift中,如何调用Objective-C代码? 苹果公司提到它们可以在一个应用程序中共存,但这是否意味着在技术上可以重复使用由Objective-C创建的旧类,同时在Swift中构建新类呢?
974 objective-c  swift 

12
如何为约束更改设置动画?
我正在使用来更新一个旧应用,AdBannerView并且当没有广告时,它会滑出屏幕。出现广告时,它会在屏幕上滑动。基本的东西。 旧样式,我将帧设置在动画块中。新样式,我IBOutlet对自动布局约束有一个确定Y位置,在这种情况下,它是距父视图底部的距离,并修改常数: - (void)moveBannerOffScreen { [UIView animateWithDuration:5 animations:^{ _addBannerDistanceFromBottomConstraint.constant = -32; }]; bannerIsVisible = FALSE; } - (void)moveBannerOnScreen { [UIView animateWithDuration:5 animations:^{ _addBannerDistanceFromBottomConstraint.constant = 0; }]; bannerIsVisible = TRUE; } 横幅完全按预期移动,但没有动画。 更新:我重新观看了WWDC 12的“精通自动布局的最佳实践”,其中涵盖了动画。它讨论了如何使用CoreAnimation更新约束: 我尝试使用以下代码,但得到的结果完全相同: - (void)moveBannerOffScreen { _addBannerDistanceFromBottomConstraint.constant = -32; [UIView animateWithDuration:2 animations:^{ [self.view setNeedsLayout]; }]; bannerIsVisible = FALSE; } …


30
如何查看iOS版本?
我想检查iOS设备的版本是否大于3.1.3 尝试过的版本: [[UIDevice currentDevice].systemVersion floatValue] 但它不起作用,我只想要一个: if (version > 3.1.3) { } 我该如何实现?
848 ios  objective-c 

13
在Objective-C中生成随机数
我主要是Java主管,并且我想要一种生成0到74之间的伪随机数的方法。在Java中,我将使用以下方法: Random.nextInt(74) 我对讨论种子或真正的随机性不感兴趣,而只关注您如何在Objective-C中完成相同的任务。我曾搜寻过Google,但似乎有很多不同且相互冲突的信息。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.