(iPhone 开发 Xcode 4.3)
我在视图控制器上有一个文本字段,在另一个控制器上有一个 NSString。我想要做的是允许用户在文本字段中输入 URL 并将其作为路径传递给我的其他控制器。
这是我目前正在使用的 NSString:
NSString * path = @"http://www.test.com";
所以我想做类似的事情:
NSString * path = INPUT FROM USER;
希望有人能指出我正确的方向。
利用
NSString *path = textField.text;
为那个 textField 创建 IBOutlate
基本上你需要两件事:
正如您已经知道的,您需要做的就是在您的文本字段上设置您的 IBOutlet 并读取字符串。
您有两种选择:
首先,您可以将一个字符串添加到您的第二个视图控制器并设置它的属性。然后创建一个自定义 -init 来接收 url 字符串。在您的第一个视图控制器中,当您创建第二个视图控制器时(我假设是这种情况),使用您的自定义 -init 来设置值。
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil andURL:(NSString *) url
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
self.urlString = url;
}
return self;
}
您还有另一个选择:在第二个视图控制器上创建一个方法。
所以在你的第二个视图控制器中,这样做:
-(void) setURL: (NSString *) url
{
self.rulString = url;
}
在您的第一个视图控制器中,执行以下操作:
SecondViewController *secondVC = [SecondViewController alloc] init];
// get url string from user input and store it in a local string variable named tempURL
[secondVC setURL:tempURL];
希望这可以帮助。
NSString *urlString = [NSURL URLWithString:textfield.text];