【问题标题】:how to import Bool value from server in objective -c如何在目标-c中从服务器导入布尔值
【发布时间】:2023-04-06 12:20:02
【问题描述】:

我的代码用服务器解析:

-(instancetype)initWithKey:(NSData *)key keyId:(NSString *)keyId validityStart:(NSDate *)validityStart validityEnd:(NSDate *)validityEnd support_long_messages:(NSString *)support_long_messages
{
}

support_long_messages 从服务器到达是真还是假,我可以从调试中看到,但我不知道如何解开这个值来写 if else 语句:

  if (!_support_long_messages) {

            [self showAlert];

        }

当我编写 if 语句时,它不起作用。 我希望如果它是 false 则显示 UIAlertview 如果它是 true 否。

任何帮助表示感谢。

【问题讨论】:

    标签: objective-c parsing xml-parsing


    【解决方案1】:

    使用 NSString 的 boolValue 属性

    if (![_support_long_messages boolValue]) {
    
                [self showAlert];
    
            }
    

    来自 NSString 头文件中 boolValue 属性的声明

    @property (只读) BOOL boolValue NS_AVAILABLE(10_5, 2_0); // 跳过 初始空格字符 (whitespaceSet),或可选的 -/+ 符号 后跟零。遇到 "Y"、"y"、"T" 之一时返回 YES, “t”,或数字 1-9。它忽略任何尾随字符。

    【讨论】:

      【解决方案2】:

      如果support_long_messages从服务器到达true或false,那么你不应该把它当作NSString变量,试着像下面这样BOOL变量。

      -(instancetype)initWithKey:(NSData *)key
                           keyId:(NSString *)keyId
                   validityStart:(NSDate *)validityStart
                     validityEnd:(NSDate *)validityEnd
           support_long_messages:(BOOL)support_long_messages{
      
      }
      

      然后试试

      if (!_support_long_messages) {
            [self showAlert];
       }
      

      【讨论】:

        猜你喜欢
        • 2011-03-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-15
        • 2019-12-30
        相关资源
        最近更新 更多