2013-10-04 79 views
0

我有顯示文章的UIWebview。我需要選擇一些文本併發送到另一個viewcontroller UITextView。但是,當我安裝應用程序我選擇文本,並加載到viewcontroller1。但是當我去viewcontroller1時,我選擇另一些文本,只顯示以前的文本。它不更新新文本。UITextView文本不更新

代碼:

視圖 - 控制:

NSString *selection = [wbCont stringByEvaluatingJavaScriptFromString:@"window.getSelection().toString()"]; 

NSUserDefaults *userData1 = [NSUserDefaults standardUserDefaults]; 
    [userData1 setObject:selection forKey:@"preferenceName"]; 
    [userData1 synchronize]; 

[self.navigationController pushViewController:viewcontroller1 animated:YES]; 

viewcontroller1:

NSString *savedValue = [[NSUserDefaults standardUserDefaults] 
          stringForKey:@"preferenceName"]; 

textView.text = [NSString stringWithFormat:@"%@", savedValue]; 
[self.view addSubview:textView]; 
+0

什麼是savedValue的價值? – Purva

+0

,同時啓動應用程序savedValue來,然後它不來。 – user2807197

+0

當我得到選擇NSLog時,它正在更新。但NSUserdefaults沒有得到更新值。 NSLog(@「選擇是%@」,選擇); – user2807197

回答

0

在viewcontroller1嘗試做這樣

NSUserDefaults *userData1 = [NSUserDefaults standardUserDefaults]; 
NSString *savedValue = [userData1 valueForKey:@"preferenceName"]; 

textView.text = [NSString stringWithFormat:@"%@", savedValue]; 
[self.view addSubview:textView]; 
+0

這不起作用。我想這是因爲這行[self.navigationController pushViewController:viewcontroller1 animated:YES];有問題 – user2807197

+0

請確保您的「選擇」字符串對象中有數據? –

+0

是的。這行NSString * selection = [wbCont stringByEvaluatingJavaScriptFromString:@「window.getSelection()。toString()」]; – user2807197

0

試試這個:

NSString *selection = [wbCont stringByEvaluatingJavaScriptFromString:@"window.getSelection().toString()"]; 

    NSUserDefaults *userData1 = [NSUserDefaults standardUserDefaults]; 
    [userData1 setValue:selection forKey:@"preferenceName"]; 
    [NSUserDefaults standardUserDefaults] synchronize]; 
    [self.navigationController pushViewController:viewcontroller1 animated:YES]; 

//瀏覽器

NSString *savedValue = [[NSUserDefaults standardUserDefaults] 
           valueForKey:@"preferenceName"]; 
UITextView *textView = [UITextView alloc] initWithFrame : cgRectMake(0,0,200,50)]//if not created textview 
[self.view addSubview:textView]; 
textView.text = [NSString stringWithFormat:@"%@", savedValue]; 
+0

不,它不工作...如果我使用UIAlertview獲取文本,它會更改,當我使用NSUserDefaults時,它不會變換。 – user2807197

+0

是從userdefault獲取值時字符串是否爲NULL? – Purva

+0

當我得到選擇NSLog時,它正在更新。但NSUserdefaults沒有得到更新值。 NSLog(@「選擇是%@」,選擇); – user2807197