标签: cocoa-touch

将文本垂直对齐到UILabel中的顶部

我有UILabel两行文字的空间.有时,当文本太短时,此文本显示在标签的垂直中心.

如何将文本垂直对齐以始终位于顶部UILabel

表示具有垂直居中文本的UILabel的图像

xcode cocoa-touch text-alignment uikit ios

2141
推荐指数
39
解决办法
64万
查看次数

如何检查iOS或macOS上的活动Internet连接?

我想查看我是否在iOS上使用Cocoa Touch库或使用Cocoa库在macOS 上建立了Internet连接.

我想出了一个方法,使用一个NSURL.我这样做的方式似乎有点不可靠(因为即使谷歌有一天会失败并依赖第三方看起来很糟糕),而且如果谷歌没有回应,我可以查看其他网站的回复,在我的应用程序中看起来似乎很浪费并且不必要的开销

- (BOOL) connectedToInternet
{
    NSString *URLString = [NSString stringWithContentsOfURL:[NSURL URLWithString:@"http://www.google.com"]];
    return ( URLString != NULL ) ? YES : NO;
}
Run Code Online (Sandbox Code Playgroud)

我做得不好,(更不用说stringWithContentsOfURL在iOS 3.0和macOS 10.4中被弃用)如果是这样,有什么更好的方法来实现这一目标?

macos cocoa cocoa-touch reachability ios

1309
推荐指数
34
解决办法
44万
查看次数

如何使用自定义对象对NSMutableArray进行排序?

我想做的事情似乎很简单,但我在网上找不到任何答案.我有一个NSMutableArray对象,让我们说它们是'人'对象.我想NSMutableArray按Person.birthDate 排序,这是一个NSDate.

我认为这与这个方法有关:

NSArray *sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(???)];
Run Code Online (Sandbox Code Playgroud)

在Java中,我会使我的对象实现Comparable,或者使用带有内联自定义比较器的Collections.sort ...你到底如何在Objective-C中执行此操作?

sorting cocoa-touch objective-c nsmutablearray ios

1253
推荐指数
19
解决办法
46万
查看次数

如何禁用UITableView选择?

当您点击a中的某一行时UITableView,该行会突出显示并被选中.是否可以禁用此功能,因此点击一行什么都不做?

cocoa-touch uitableview ios

1176
推荐指数
37
解决办法
46万
查看次数

这是什么意思?"'NSUnknownKeyException',原因:...此类不是键值X的键值编码兼容"

我正在尝试将a UILabelIBOutlet我班级中的创建链接起来.

我的应用程序崩溃,出现以下错误.这是什么意思?我该如何解决?

***由于未捕获的异常'NSUnknownKeyException'终止应用程序,原因:'[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]:此类不是密钥XXX的密钥值编码.

macos cocoa cocoa-touch interface-builder ios

1143
推荐指数
28
解决办法
83万
查看次数

我可以在iPhone应用程序中嵌入自定义字体吗?

这个问题涉及iOS 3.2之前的版本.从3.2开始,使用下面的samvermette答案很容易实现这个功能,我已经改变了接受的答案(从命令到samvermette)以反映这一点.我不能赞同这两个答案(除了upvotes),但它们都很好.

我想有一个应用程序包括一个自定义字体用于渲染文本,加载它,然后使用标准UIKit元素,如UILabel.这可能吗?

我在下面找到了链接:

但是这些要求我自己渲染每个字形,这有点太辛苦了,特别是对于多行文本.

我也发现帖子直截了当地表示这是不可能的,但没有理由,所以我正在寻找一个确定的答案.


编辑 - UIKit实验失败

我下载了Harrowprint.tff(从这里下载)并将其添加到我的Resources目录和项目中.然后我尝试了这段代码:

__PRE__

导致抛出异常.查看Finder中的TTF文件,确认字体名称为Harrowprint.


编辑 - 到目前为止已经有很多回复告诉我阅读关于X或Y的文档.我已经对所有这些进行了广泛的实验并且无处可去.在一个案例中,X结果仅与OS X相关,而不是在iPhone上.因此,我正在为这个问题设置一个赏金,我将奖励给第一个提供答案的人(仅使用文档化的API),他们会回答足够的信息以便在设备上运行.在模拟器上工作也是一个奖励.


编辑 - 似乎赏金自动奖励得票最多的答案.有趣.实际上没有人提供解决问题的答案 - 涉及编码自己的UILabel子类的解决方案不支持自动换行,这对我来说是一个必不可少的功能 - 尽管我想我可以扩展它来做到这一点.

fonts cocoa-touch ios

771
推荐指数
23
解决办法
24万
查看次数

加载的笔尖但"视图"插座未设置

我在项目中添加了一个新的nib文件,并尝试加载它.

但是,当我点击应该带我到我创建的视图的工具栏图标时,我得到一条NSInternalInconsistencyException消息:

由于未捕获的异常'NSInternalInconsistencyException'终止应用程序,原因:' - [UIViewController _loadViewFromNibNamed:bundle:]加载了"..."笔尖,但未设置视图插座.

所以我打开了我的nib文件,我看到没有设置引用插件的视图.但是,我尝试单击并将"新引用插座"的圆圈拖动到文件所有者,但它不会让我...我需要做什么才能显示我的视图?

cocoa-touch interface-builder xib ios

722
推荐指数
15
解决办法
24万
查看次数

UITextView中的占位符

我的应用程序使用了UITextView.现在我希望UITextView有一个类似于你可以设置的占位符UITextField.

这该怎么做?

cocoa-touch objective-c placeholder uitextview ios

708
推荐指数
26
解决办法
36万
查看次数

@class vs. #import

根据我的理解,如果ClassA需要包含ClassB头,则应该使用前向声明,而ClassB需要包含ClassA头以避免任何循环包含.我也明白a #import是一个简单的,ifndef所以包含只发生一次.

我的询问是这样的:什么时候使用#import,什么时候使用@class?有时如果我使用@class声明,我会看到一个常见的编译器警告,如下所示:

warning: receiver 'FooController' is a forward class and corresponding @interface may not exist.

真的很想理解这一点,而不是仅仅删除@class前向声明并抛出一个#import静音编译器给我的警告.

cocoa cocoa-touch objective-c

707
推荐指数
10
解决办法
17万
查看次数

消除UITableView下面的额外分隔符

当我设置一个包含4行的表视图时,在填充的行下面还有额外的分隔符行(或额外的空白单元格).

我该如何移除这些细胞?

UITableView中额外分隔线的图像

cocoa-touch uitableview ios

690
推荐指数
16
解决办法
18万
查看次数