簡體   English   中英

在UIView上創建UITextField,但無法獲取文本輸入

[英]Create UITextField on UIView but can not get text input

我正在使用Xcode 6,並在iOS 8上做一個小項目,我需要在View上渲染一些文本。

我的方法是在UIView上創建一個UITextField,只要人們鍵入onit,應用程序就會重繪該View:

- (void)viewDidLoad {
    [super viewDidLoad];

    self.renderTextView.textToRender = @"Please type something…";
    UITextField* textField = [[UITextField alloc] initWithFrame:self.renderTextView.frame];
    textField.opaque = NO;
    [self.renderTextView addSubview:textField];
    [textField addTarget:self action:@selector(updateLabelAndRefresh:) forControlEvents:UIControlEventEditingChanged];  
}

- (void) updateLabelAndRefresh: (id)sender{
    self.renderTextView.textToRender = @"Hello World";

    // if text's length > 0 …
    if (self.textField.text.length > 0) {
        self.renderTextView.textToRender = self.textField.text;
    }

    [self.renderTextView setNeedsDisplay];

}

但是問題是:無論如何嘗試,我都無法獲得在手機上鍵入的實際文本。 然后控制台顯示文本為 我一直在搜尋它,但我仍無法解決。

你們有什么解決辦法嗎? 謝謝 ;)

下面有一些錯誤,請看一看。

- (void)viewDidLoad {
 [super viewDidLoad];

 //Here textField is local variable
 UITextField* textField = [[UITextField alloc] initWithFrame:self.renderTextView.frame];
 textField.opaque = NO;


}

- (void) updateLabelAndRefresh: (id)sender{
  self.renderTextView.textToRender = @"Hello World";

   // if text's length > 0 …
  if (self.textField.text.length > 0) {   //Then how come u getting self.textField here and using it as global one.
   //So you won't get access to that locally defined textField in viewDidLoad method.
     self.renderTextView.textToRender = self.textField.text;
 }
}

請檢查您的代碼,並向我更新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM