cocoa-touch相关内容

自定义 UISegmentedControl

如何制作自定义 UISegmentedControl? 我有 2 张图片,其中 1 张应在段处于活动状态时显示,而另一张应在段处于非活动状态时显示.我可以覆盖样式或其他东西,所以我有一个 UISegmentedControl 与我自己的图像作为活动/非活动背景? 解决方案 除了“on"和“off"位置有两种不同的状态之外,我还必须添加这个额外的代码: - (void)viewDid ..
发布时间:2022-01-23 10:36:55 移动开发

实际上,NSAssert 的意义何在?

我不得不问这个问题,因为:我唯一认识到的是,如果断言失败,应用程序就会崩溃.这就是使用 NSAssert 的原因吗?或者它还有什么好处?将 NSAssert 放在我在代码中所做的任何假设之上是否正确,例如一个永远不应该接收 -1 作为参数但可能是 -0.9 或 -1.1 的函数? 解决方案 断言是为了确保一个值是它应该是的.如果断言失败,则意味着出现问题,因此应用程序退出.使用 asser ..
发布时间:2022-01-23 10:36:31 移动开发

刷新 UIPageViewController - 重新排序页面并添加新页面

我有一个 UIPageViewController,我正在为使用 UIPageControllerDelegate 和 UIPageControllerDataSource 的实现提供页面数据. 一切正常,但我希望能够将项目添加到页面数据并重新排序页面数据. 如果用户已经到达最后一页,然后我添加了一个项目,他们将无法到达下一页,因为 viewControllerAfterViewCon ..
发布时间:2022-01-23 10:31:16 移动开发

如何将方法调用延迟 1 秒?

有没有简单的方法将方法调用延迟 1 秒? 我有一个对触摸事件作出反应的 UIImageView.当检测到触摸时,应用程序中会出现一些动画.一秒钟后,我想调用另一个方法.在这种情况下,我不能使用 animationDidStop 选择器. 解决方案 performSelector:withObject:afterDelay: 文档参考 ..
发布时间:2022-01-23 10:30:50 移动开发

如何以简单的方式将 CGPoint 对象添加到 NSArray?

我有大约 50 个描述类似“路径"的 CGPoint 对象,我想将它们添加到 NSArray.这将是一个只返回给定索引对应的 CGPoint 的方法.我不想创建 50 个变量,例如 p1 = ...;p2 = ...,依此类推.有没有一种简单的方法可以让我在使用对象初始化 NSArray 时“立即"定义这些点? 解决方案 通过 UIKit Apple 为 NSValue 添加了对 CGPo ..
发布时间:2022-01-23 10:30:19 移动开发

如何使用 UIPageControl 创建多个视图?

我需要为我的应用程序使用 UIPagecontrol,但我不知道如何开始.我是初学者,苹果给我的例子很复杂.我只需要 3 个页面,每个页面都有不同的视图. 解决方案 你会想要使用 UIScrollView,然后,作为兄弟,将 UIPageControl 放置在它上面.然后将您的每个页面放入滚动视图并为其打开分页.这样,每次“轻弹"都会将滚动视图移动一页. 现在,将您的视图控制器指定为 ..
发布时间:2022-01-23 10:29:46 移动开发

当 -adjustsFontSizeToFitWidth 设置为 YES 时,如何计算 UILabel 的字体大小?

当myLabel.adjustsFontSizeToFitWidth = YES 时,UILabel 会自动调整字体大小,以防标签的文本过长.例如,如果我的标签只有 100 像素宽,而我的文本太长而无法适应当前的字体大小,它会缩小字体大小,直到文本适合标签为止. 当字体大小缩小时,我需要从 UILabel 获取实际显示的字体大小.例如,假设我的字体大小实际上是 20,但 UILabel 不得 ..
发布时间:2022-01-23 10:29:38 移动开发

是否可以使用 UITableViewStylePlain 禁用 UITableView 中的浮动标题?

我正在使用 UITableView 来布局内容“页面".我正在使用表格视图的标题来布局某些图像等,如果它们不浮动但保持静态,就像在样式设置为 UITableViewStyleGrouped 时一样,我更喜欢它. 然后使用 UITableViewStyleGrouped,有没有办法做到这一点?我想避免使用分组,因为它会在我的所有单元格中添加一个边距,并且需要禁用每个单元格的背景视图.我想完全控 ..
发布时间:2022-01-23 10:28:53 移动开发

如何将浮点值四舍五入到小数点后 2 位?

我从加速度计得到一个浮点值,如下所示: -3.04299553323 例如,我想得到 -3.04.有没有一种简单的方法来舍入该浮点值? 编辑: Objective-C 中的四舍五入 解决方案 我知道这是旧帖子,但以防万一其他人正在寻找快速的两步选项. float old = -3.04299553323;float new = [[NSString stringW ..
发布时间:2022-01-23 10:28:43 移动开发

UITextField secureTextEntry 带有自定义字体的项目符号?

我在 UITextField 中使用自定义字体,该字体已打开 secureTextEntry.当我在单元格中输入时,我会看到我选择的字体的项目符号,但是当字段失去焦点时,这些项目符号会恢复为系统标准字体.如果我再次点击该字段,它们会变回我的字体,依此类推. 有没有一种方法可以确保它们继续显示自定义字体的项目符号,即使字段失焦? 解决方案 解决这个问题的子类.创建一个任意UITextF ..
发布时间:2022-01-23 10:26:44 移动开发

为什么我必须最后调用 super -dealloc,而不是先调用?

正确的例子: - (void)dealloc {[viewController 发布];[窗口释放];[超级释放];} 错误的例子: - (void)dealloc {[超级释放];[viewController 发布];[窗口释放];} Although 在几乎所有其他情况下,当覆盖一个方法时,我会首先调用 super 的方法实现,在这种情况下,Apple 总是在最后调用 [super ..
发布时间:2022-01-23 10:24:54 移动开发

向 iOS 应用程序添加另一个 UIWindow 的优点、问题、示例?

最近我一直在想,iOS 应用只有一个 UIWindow.创建另一个 UIWindow 并将其放在屏幕上似乎不是问题. 我的问题有点含糊,但我很感兴趣: 我可以通过第二个 UIWindow 实现哪些其他方式无法实现的目标? 使用多个 UIWindow 实例时会出现什么问题? 我看到人们使用第二个 UIWindow 在 iPhone 上显示类似弹出窗口的视图.这是一个好方法吗?为什么? ..
发布时间:2022-01-23 10:24:39 移动开发

添加“清除"iPhone UITextField 的按钮

如何在 UITextField 右侧添加用于清除文本的小“X"按钮?我在 iPhone OS 2.2 SDK 的 Interface Builder 中找不到用于添加此子控件的属性. 注意:在 Xcode 4.x 及更高版本(iPhone 3.0 SDK 及更高版本)中,您可以在 Interface Builder 中执行此操作. 解决方案 这个按钮是由 UITextField 类提 ..
发布时间:2022-01-23 10:21:09 移动开发

viewWillDisappear:判断视图控制器是被弹出还是显示子视图控制器

我正在努力寻找解决这个问题的好方法.在视图控制器的 -viewWillDisappear: 方法中,我需要找到一种方法来确定是因为视图控制器被推送到导航控制器的堆栈上,还是因为视图控制器正在消失因为它已经被弹出了. 目前我正在设置诸如 isShowingChildViewController 之类的标志,但它变得相当复杂.我认为我可以检测到它的唯一方法是在 -dealloc 方法中. ..
发布时间:2022-01-23 10:19:55 移动开发

如何在没有自定义单元格的情况下将文本包装在 UITableViewCell 中

这是在 iPhone 0S 2.0 上.2.1 的答案也很好,但我不知道关于表格的任何差异. 感觉应该可以在不创建自定义单元格的情况下让文本换行,因为 UITableViewCell 默认包含 UILabel.我知道如果我创建一个自定义单元格,我可以让它工作,但这不是我想要实现的 - 我想了解为什么我目前的方法不起作用. 我发现标签是按需创建的(因为单元格支持文本和图像访问,所以它不会 ..
发布时间:2022-01-23 10:18:53 移动开发

UITableViewCell,在滑动时显示删除按钮

如何在 UITableViewCell 上滑动时显示删除按钮?该事件永远不会引发,删除按钮也永远不会出现. 解决方案 在(-viewDidLoad or in storyboard)中启动时做: self.tableView.allowsMultipleSelectionDuringEditing = false 覆盖以支持表格视图的条件编辑.仅当您要为某些项目返回 NO 时,才需要执 ..
发布时间:2022-01-23 10:18:43 移动开发