ios - 用 isEqual 比较字符串没有运行完整的功能 iOS

标签 ios objective-c string if-statement nsstring

我有一个烦人的问题,我试图解决它,但它只是没有发生,所以要么我错过了一些愚蠢的东西,要么我做错了。

基本上 id 喜欢检查一个字符串,如果它是 no,则加载空白字符串,如果还有其他内容,则加载真正的字符串。

这是我的代码。

 NSString* q1ynu = [defaults objectForKey:@"1aq1ynu"];
if ([q1ynu isEqualToString:@"No"]){
    NSString *q1text = @" ";
    NSString *q1lmh = @" ";
}else{
    NSString* q1lmh = [defaults objectForKey:@"1aq1lmh"];
    NSString* q1text = [defaults objectForKey:@"1aq1"];
}

我把 NSString *q1text = @" ";实现之后和之前 viewDidLoad 但它确实提示未使用的变量。

它在之前加载了所有 3 个答案,无论是否检查,但现在在加载第一个答案之后加载否,或者是,没有别的?

我错过了什么还是这只是不应该工作?如果没有,那么什么会起作用,因为我不知所措?

谢谢大家

最佳答案

您在 if 语句中声明变量,它们不会存在于它之外。你需要更多这样的东西:

NSString* q1ynu = [defaults objectForKey:@"1aq1ynu"];
NSString *q1text = @" ";
NSString *q1lmh = @" ";
if (![q1ynu isEqualToString:@"No"]){
    q1lmh = [defaults objectForKey:@"1aq1lmh"];
    q1text = [defaults objectForKey:@"1aq1"];
}

// Now you can do something with q1lmh and q1text...

请注意,这仍然是看起来很讨厌的代码:)

关于ios - 用 isEqual 比较字符串没有运行完整的功能 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34020452/

相关文章:

ios - 是否有适用于 Mac 的图形工具来帮助在层上定位 CCNode 对象?

ios - 带有 "webkit-overflow-scrolling: touch"的可见滚动条 IOS

ios - 转换参数以使 Swift 使用 vDSP API 进行编译

objective-c - 带静态轴的核心图

iphone - 执行 segue 时未加载下一个 View Controller

java - 在Java中比较字符串数组中的元素

ios - 如何在 ios swift 中更改 tableview 可见单元格中文本的颜色

ios - 当应用程序处于后台模式时,如何通过套接字保持与服务器的连接?

mysql - 在 MySQL 中选择连接子字符串并替换

c++ - 使用模板处理整数、字符串和字符串数组