【问题标题】:how to pass five value in the method calling in objective c如何在目标c中调用的方法中传递五个值
【发布时间】:2018-04-10 06:29:42
【问题描述】:

我的代码在这里(方法定义)

- (void)info:(NSString *)idno info1:(NSString *)package info2:(NSString *)rate info3:(NSString *)type info4:(NSString *)status;
{
  //CODE HERE
}

我的代码在这里(方法调用)

[self performSelector:@selector(info:info1: info2:info3:info4:) withObject:@"a" withObject:@"b" withObject:@"c" withObject:@"d" withObject:@"e"  ];

我的应用显示休闲错误:

“ViewController”没有可见的@interface 声明选择器“performSelector:withObject:withObject:withObject:withObject:withObject:”

请帮忙解决这个问题

【问题讨论】:

  • 传递一个字典而不是五个参数。
  • 您实际上想做什么,请解释一下,我们给您的选择可能比您尝试的更好。
  • 如何通过一个 dic 请给我简单的例子
  • performSelector 不打算调用具有多个参数的函数。然后使用一些包装结构(字典、结构等)来传递单个参数。
  • 请说明您的要求。你想用 func 在类中传递值吗??

标签: ios objective-c


【解决方案1】:

您可以直接调用该方法而不是performSelector

[self info:@"a" info1:@"b" info2:@"c" info3:@"d" info4:@"e" ];

如果您想在 performselector 的帮助下继续工作,请参阅 SO 中已经回答的问题

【讨论】:

    【解决方案2】:

    这就是你必须做的。

    viewDidLoad

    // create a dict 
    
    NSDictionary *myDict = [[NSDictionary alloc] initWithObjectsAndKeys: @"my_pack" , @"package" , @"my_rate" , @"rate" ,  @"my_type", @"type" , @"my_status", @"status" , nil];
    
    // Call your func
    
    [self passMyValueHere:myDict];
    

    你的功能

    - (void) passMyValueHere : (NSDictionary *) myValues{
    
    }
    

    【讨论】:

    • 直接调用[self info:pass your argments];
    • @MohamedAli 有什么问题??调用具有多个参数的函数或将值存储到数据库中??
    • 我都想调用具有多个参数的函数,当我的函数获取这些值时,必须将值存储到 sqlite DB 我在此处插入代码: NSString *strsave = [[NSString alloc]initWithFormat:@"insert into internet_rate values('%@','%@','%@','%@','%@')",idno ,package , rate,status ,type]; dboperation *ds = [[dboperation alloc]init];布尔 st = [ds getalluser:strsave]; if (st) { NSLog(@"数据已保存"); } else { NSLog(@"数据未保存"); }
    • @MohamedAli 这是一个不同的问题,所以如果你在这里发布新问题 bcz 更好,任务是如何传递五个值。
    • 使用文字创建NSDictionary 要容易得多:NSDictionary *myDict = @{@"my_pack" : @"package" , @"my_rate" : @"rate"};
    猜你喜欢
    • 2013-05-06
    • 2013-01-05
    • 1970-01-01
    • 2012-06-22
    • 2010-11-23
    • 1970-01-01
    • 2022-10-04
    • 1970-01-01
    • 2012-01-27
    相关资源
    最近更新 更多