Tag: parameter passing

更新TableViewController中的variables

我需要更新TableViewController中的variables,我不能find办法做到这一点,有人可以解释为什么这是行不通的吗? 我生气了 从我的视图控制器这是我正在运行的代码: let storyboard = UIStoryboard(name: "Main", bundle: nil) let TV = storyboard.instantiateViewControllerWithIdentifier("tbController") as myTableViewController TV.x = "test" 然后,从TableViewController类: class myTableViewController: UITableViewController { var x:String! override func viewDidLoad() { super.viewDidLoad() println("Value of x is: \(self.x)") } } 印刷的价值是:无 为什么? 那有什么问题? 我不明白:-( 更新的图片

iOS在两个方法之间传递一个string

我有4个选项分配给4个button。 其中一个选项是正确的,它被分配给string“correctAnswerString” 4个button调用“action:@selector(submitAnswer :)” 我希望能够访问“submit Answer”方法中的string“correctAnswerString”,并比较是否按下了正确答案的button。 我相信这是通过在.h文件中创build一个“@interface”来完成的,但我不知道该怎么做。 很多赞赏的帮助。 代码如下: – (void) loadAnswerChoice { int correctAnswer = 11; int incorrectOne = 20; int incorrectTwo = 5; int incorrectThree = 8; correctAnswerString = [NSString stringWithFormat:@"%d", correctAnswer] [button1 setTitle:[NSString stringWithFormat:@"%d", incorrectOne] forState:UIControlStateNormal]; [button1 addTarget:self action:@selector(submitAnswer:) forControlEvents:UIControlEventTouchUpInside]; [button2 setTitle:[NSString stringWithFormat:@"%d", correctAnswer] forState:UIControlStateNormal]; [button2 addTarget:self action:@selector(submitAnswer:) forControlEvents:UIControlEventTouchUpInside]; [button3 setTitle:[NSString stringWithFormat:@"%d", […]

将核心数据实体属性从ViewController A传递给B.

我有一个核心数据的小问题。 我会跳过代码,因为它工作正常。 我只需要知道在prepareForSeague方法里面做什么。 应用程序有2个视图 – ViewControllerA和TableViewControllerB。 在TableViewControllerB我已经设置了表格视图与自定义单元格的细胞标识符:customCell。 我按下buttonADD,它显示2行警报视图。 警报视图将2个属性添加到实体,这些属性显示在表格单元格中。 实体称为SOMEentity,而属性是名称(NSString)和值(也是NSString)。 视图控制器A有两个textFields:TextFieldA和TextFieldB,一个button计算和标签叫calculateLabel。 计算button只是从textFields添加值。 现在我想这样做 – 单击单元格将显示TextFieldA中的属性值。 我需要做些什么 -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender; { if ([[segue identifier] isEqualToString:@"FromViewBToViewA"]) { } } 另外,我必须在ViewControllerA中的viewDidLoad方法内写入东西吗? 所有的string和标签都是非primefaces的,强大的属性。 谢谢!

如何有效地设置HTTP身体请求?

在我的应用程序中,我目前正在从每个viewcontroller发送http请求。 但是,目前我正在实现一个类,这应该有发送请求的方法。 我的要求在参数数量上有所不同。 例如,要得到tableview的东西的列表,我需要把类别,子类别,filter和5个以上的参数请求。 这就是我的请求现在看起来像: NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init]; [request setValue:verifString forHTTPHeaderField:@"Authorization"]; [request setURL:[NSURL URLWithString:@"http://myweb.com/api/things/list"]]; [request setHTTPMethod:@"POST"]; [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; NSMutableString *bodyparams = [NSMutableString stringWithFormat:@"sort=popularity"]; [bodyparams appendFormat:@"&filter=%@",active]; [bodyparams appendFormat:@"&category=%@",useful]; NSData *myRequestData = [NSData dataWithBytes:[bodyparams UTF8String] length:[bodyparams length]]; [request setHTTPBody:myRequestData] 我的第一个想法是创build方法,接受所有这些参数,那些不需要的将是零,那么我会testing哪些是零,那些不是零将附加到参数string(毫秒)。 然而这是相当低效的。 后来我正在考虑传递一些带有存储值的字典作为参数。 像在Android的Java中使用nameValuePair的数组列表。 我不知道,我将如何获得我的字典中的键和对象 -(NSDictionary *)sendRequest:(NSString *)funcName paramList:(NSDictionary *)params { // now I need […]

传递NSString在下一个ViewController中返回null

我想从一个视图控制器传递NSString到下一个 。 不过,我似乎无法得到它正常工作,我已经build立了一个简单的NSLog(@"%@", myString); 在我尝试[vc2 setString:myString]; 它打印正确的string,并在第二个viewController,它是回来为空如此清楚,我做错了什么。 这是我的代码。 第一个viewController #import "DetailController.h" #import "City.h" #import "VideoController.h" #import "Helper.h" @interface DetailController () @end @implementation DetailController @synthesize city, ClubName, Price, Vip, Promo, remain,p,deal,money,camera,cam,tweet,post; – (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { // Custom initialization } return self; } – (void)viewDidLoad { [super […]

目标C – 按价值传递,并通过参考传递

首先,对于这个简单的问题感到抱歉。 但是我需要了解发生的事情。 我认为输出应该是upper case string 。 但它是上面的UPPER CASE STRING 。 – (void)test { NSString *stringVar = @"UPPER CASE STRING"; [self changeString:stringVar]; NSLog(@"value after changed : %@", stringVar); } – (void)changeString:(NSString*)string { string = [string lowercaseString]; } 发生了什么事以及如何解决这个问题?