相关疑难解决方法(0)

[NSNull isEqualToString:]

我试图将字符串设置为"如果[object objectForKey @"display_name"]为NULL,则为"无显示名称".它在日志中崩溃了

2011-06-16 10:58:36.251 BV API[15586:ef03] displayNameType is: NSNull
2011-06-16 10:58:36.251 BV API[15586:ef03] +[NSNull isEqualToString:]: unrecognized selector sent to class 0x1228c40
2011-06-16 10:58:36.253 BV API[15586:ef03] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSNull isEqualToString:]: unrecognized selector sent to class 0x1228c40'
*** First throw call stack:
(0x1198f1c 0x132b52e 0x119bb2b 0x10f3076 0x10f2bb2 0x116d9 0x112ad 0x8b0e17 0x8b9783 0x8b43ae 0x8b9d20 0xb6312b 0x815c35 0xac2e1e 0x8b7583 0x8b771d 0x8b775d 0xc1b5 0x7ed84c 0x7ed7e2 0x89477a 0x894c4a 0x893ee4 0x813002 0x81320a 0x7f960c 0x7ecd52 0x211b8f6 0x116831a 0x10c3d07 0x10c1e93 0x10c1750 …
Run Code Online (Sandbox Code Playgroud)

string iphone null dictionary ios

8
推荐指数
2
解决办法
2万
查看次数

是(变量)与Objective-C中的if(变量!= nil)相同

我在我的iPhone项目中获得了一行EXC_BAD_ACCESS(SIGBUS):

if (timeoutTimer) [timeoutTimer invalidate];
Run Code Online (Sandbox Code Playgroud)

令我难过的是我不明白该行怎么会崩溃,因为if语句意味着要检查nil.我是否误解了Objective-C的工作方式,或者在崩溃语句中的行号有时会出现错误的行?

iphone objective-c

7
推荐指数
2
解决办法
8730
查看次数

如何在iOS中检查NSString中的NULL值?

我有一个NSString,我想检查它是否有NULL值.如果是,那么if条件应该执行.否则它应该执行else条件.

以下是我使用的代码:

if ([appDelegate.categoryName isEqual:[NSNull null]])
{
    select = [[NSString alloc] initWithFormat:@"select * FROM ContentMaster LEFT JOIN Category ON ContentMaster.CategoryID=Category.CategoryID where ContentMaster.ContentTagText='%@'", appDelegate.tagInput];
}
else
{
    select = [[NSString alloc] initWithFormat:@"select * FROM ContentMaster LEFT JOIN Category ON ContentMaster.CategoryID=Category.CategoryID LEFT JOIN Topic ON ContentMaster.TopicID=Topic.TopicID where ContentMaster.ContentTagText='%@' && Category.CategoryName='%@' && Topic.TopicName='%@'", appDelegate.tagInput, appDelegate.categoryName, appDelegate.topicName];
}    
Run Code Online (Sandbox Code Playgroud)

它总是执行else条件,而不是if条件,即使值是NULL.

null nsstring ios

6
推荐指数
1
解决办法
3万
查看次数

如何检查ios sdk中的数组是空还是空?

我想检查我的Bond是否为空或null和NULL值.

{
Bonds =(
      {
        DOB = "12/09/1988";
        about = "";
      }
      );
User =     {
    city = CA;
    email = "karmhadadmtl@gmail.com";
};
success = True;
}
Run Code Online (Sandbox Code Playgroud)

第二次这种类型获取数据如何检查Bond键

{
Bonds = Null;
User =     {
    city = CA;
    email = "developer.i12@gmail.com";
};
success = True;
}
Run Code Online (Sandbox Code Playgroud)

iphone xcode ios

4
推荐指数
2
解决办法
3332
查看次数

NSString未初始化时检查"空"NSString是否崩溃

我有一个方法,当我遇到一个"空"字符串时,我想确保我做一些特别的事情.当它实际上有一个字符串,或者当我专门将它设置为"nil"或"NULL"时,它工作得很好,但是当我尝试测试未初始化的NSString时它会崩溃.我该如何处理这种情况?

例如:

-(void) WhyDoICrash
{
  NSString *foo;

  // Some other stuff...

  // foo should be considered "empty"
  if (foo == nil || foo == NULL || [foo length] == 0)
  {
    // whatever
  }
}
Run Code Online (Sandbox Code Playgroud)

=============编辑===================

好的,上面只是一个显示问题的简单例子.我实际上正在使用NSString的类别,这意味着我得到的一些(好的,但不适用)建议无法使用.这是我的确切代码:

#pragma mark - NSString Category

@interface NSString (NullOrEmptyTesting)
+(BOOL) isNullOrEmpty: (NSString*)input;
@end

@implementation NSString (NullOrEmptyTesting)

+(BOOL) isNullOrEmpty: (NSString*)input
{
  return (input == (id)[NSNull null] || input.length == 0);
}

@end
Run Code Online (Sandbox Code Playgroud)

objective-c

3
推荐指数
1
解决办法
3757
查看次数

正确检查nil sqlite文本列

我有一个分配给字符串的sqlite字符串列.在分配之前我需要确保它不是零.我这样做:

char *isNil = sqlite3_column_text(selectstmt, 2);
if(isNil != nil){
  myName = [NSString stringWithUTF8String:(char *)sqlite3_column_text(selectstmt, 2)];}
Run Code Online (Sandbox Code Playgroud)

这给出了警告:

警告:初始化从指针目标类型中丢弃限定符

这样做的正确方法是什么?

sqlite iphone

2
推荐指数
1
解决办法
3655
查看次数

标签 统计

iphone ×4

ios ×3

null ×2

objective-c ×2

dictionary ×1

nsstring ×1

sqlite ×1

string ×1

xcode ×1