2010-12-18 80 views
0

我完全不熟悉iPhone開發,基本上任何C語言。我理解變量等的概念,所以我試圖以基本方式使用它們來更好地理解這個概念。不幸的是,當我嘗試做一些非常簡單的事情時,我收到了編譯器警告:我只想分配我的5個變量值。
ViewController.h代碼:
@interface MyApplicationViewController : UIViewController {從不兼容的指針類型分配?

IBOutlet UITextView *variable1; 
IBOutlet UITextView *variable2; 
IBOutlet UITextView *variable3; 
IBOutlet UITextView *variable4; 
IBOutlet UITextView *variable5; 


} 

[我知道,理論上我可以連接這些變量的文本在IB的看法,但我不]

@property (nonatomic, retain) IBOutlet UITextView *variable1; 
@property (nonatomic, retain) IBOutlet UITextView *variable2; 
@property (nonatomic, retain) IBOutlet UITextView *variable3; 
@property (nonatomic, retain) IBOutlet UITextView *variable4; 
@property (nonatomic, retain) IBOutlet UITextView *variable5; 


@end 

ViewController.m代碼:

@implementation MyApplicationViewController 
    @synthesize variable1; 
    @synthesize variable2; 
    @synthesize variable3; 
    @synthesize variable4; 
    @synthesize variable5; 
    - (void)viewDidLoad { 
    variable1 = "memory text1"; [Warning] 
    variable2 = "memory text2"; [Warning] 
    variable3 = "memory text3"; [Warning] 
    variable4 = "memory text4"; [Warning] 
    variable5 = "memory text5"; [Warning] 
    } 

我不取消分配我的變量,因爲我想讓他們在內存中unti l應用程序被完全終止。爲什麼我會收到這些警告?我做錯了什麼?我打算在這裏做的是將變量的值(memorytext1,memory text 2等)保存在內存中。我已經看過Stack Overflow上有關此警告的其他對話,但他們的問題似乎與我的不符,儘管警告是一樣的。請不要說太複雜,因爲我還是這個新手。謝謝!

回答

5

有是兩個問題:

  • 1日的問題是,你要分配字符串文本字段變量 - 如果你想設置字段的文本,那麼你應該使用它的文本屬性
  • 第二個問題(實際上爲您提供了編譯器警告)是「串」是指C-字符串文字 - 你應該使用@「字符串」,而不是

所以正確的代碼來設置文本框的文本應該

variable1.text = @"text1"; 
+0

所以,即使我沒有文字視圖,這仍然工作?我的意思是,這些值是否仍然存儲在內存中? – Reynold 2010-12-18 18:45:59

+0

如果你只想存儲字符串值,那麼使用NSString對象:NSString * stringVar; ... self.stringVar = @「memory text1」; – Vladimir 2010-12-18 19:12:37

0

您在文本開頭缺少@

variable1.text = @"memory text1"; 
variable2.text = @"memory text2"; 
variable3.text = @"memory text3"; 
variable4.text = @"memory text4"; 
variable5.text = @"memory text5"; 
+1

他缺少*很多*以上。 – bbum 2010-12-18 18:30:30

+0

爲什麼選擇投票?那是正確的答案。 – WrightsCS 2010-12-18 18:30:39

+0

哦,好吧,文字 – WrightsCS 2010-12-18 18:31:08

0

弗拉基米爾是正確的,假設你正在使用NIB文件到指定的UITextView性能。如果你沒有使用NIB,你的變量將是零,你的字符串將不會被分配到任何地方。

相關問題