iphone - ViewDidLoad 什么是 false

标签 iphone uibutton uilabel viewdidload

你能告诉我这段代码中有什么错误吗?我喜欢检查每次启动时是否安装了 cydia.app,如果安装了 Cydia,则标签应该更改并且应该启用按钮,但没有任何反应。

这是代码:

NSString *filePath = @"/Applications/Cydia.app";
if ([[NSFileManager defaultManager] fileExistsAtPath:filePath]){
    Lable.text = @"You are jailbroken";
    Button.enabled = YES;
}

最佳答案

如果要启用该按钮,则需要将这两行用括号括起来,并删除条件后面的分号。基本上,您的代码应该如下所示:

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]){
     Lable.text = @"You are jailbroken";
     Button.enabled = YES;
}

否则,您当前在条件语句后插入分号所使用的内容实际上是一个 null 语句。即使删除分号,也只会执行第一行。因此,您需要删除分号,并插入大括号来设置条件范围。

编辑:

也许您可能需要尝试构建路径而不是对其进行硬编码:

NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSApplicationDirectory, NSUserDomainMask, YES) stringByAppendingPathComponent: @"cydia.app"];

如果该文件仍然不存在,请尝试列出 NSApplicationDirectory 中的文件和目录以查看该文件是否确实存在,或者您需要在其他地方(甚至可能是子文件夹)进行搜索。

关于iphone - ViewDidLoad 什么是 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12343828/

相关文章:

objective-c - 如果标签包含 NSAttributed 字符串且部分字符串为粗体,如何获取标签的准确高度

iphone - 在应用程序更新时,自定义 plist 文件将得到更新,或者我们需要做些什么吗?

ios - 我可以从当前未激活的 iOS 应用程序调用电话吗?

iphone - 我如何真正知道 UIButton 何时被释放?

ios - 单击 Swift XCode 中的编程按钮后如何在 Controller 之间切换

ios - 如何在标签上添加动画?

iphone - 如何设置 UIAlertView 的高度和宽度?

jQuery手机iPhone点击调用servlet 6次

ios - 在 UIButton 中垂直显示标题?

iphone - 在标签中显示一个数字,但让它计算数字