2010-12-18 6 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; 


} 

[I 이론적으로 내가 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] 
    } 

나는 변수를 메모리에 보관하고 싶지 않기 때문에 변수를 할당 해제하지 않습니다. l 응용 프로그램이 완전히 종료되었습니다. 왜 내가이 경고를받는거야? 내가 뭐 잘못하고 있니? 여기서 내가하고자하는 것은 변수의 값 (memorytext1, 메모리 텍스트 2 등)을 메모리에 저장하는 것입니다. 스택 오버플로에 대한이 경고에 대한 다른 대화를 살펴 보았지만 경고는 동일했지만 문제는 내 것과 일치하지 않는 것으로 보입니다. 제가 아직까지 새롭기 때문에 너무 복잡한 것은 말하지 마십시오. 감사!

답변

5

2 문제가있어 :

  • 첫번째 문제는 당신이 당신의 텍스트 문자열을 지정하려는 변수 필드 있다는 것을 - 당신은 다음의 텍스트 속성을 사용합니다 필드의 텍스트를 설정하려면
  • 2 문제 (즉, 실제로 당신이 경고를 컴파일러 제공) "문자열이"C 문자열 리터럴 의미 - 당신은 사용해야 @ 대신 "문자열"

그래서 올바른 코드를 텍스트 필드의 텍스트를 설정하는

variable1.text = @"text1"; 
+0

그래도 텍스트보기가 없어도 여전히 작동합니까? 내 말은, 값들이 여전히 메모리에 저장 될 것인가? – Reynold

+0

그냥 문자열 값을 저장하고 싶다면 NSString 객체를 사용하십시오 : NSString * stringVar; ... self.stringVar = @ "memory text1"; – Vladimir

0

텍스트 시작 부분에 @이 누락되었습니다!

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

그는 그보다 더 많이 부족합니다. – bbum

+0

왜 투표가 늦습니까? 그게 정답입니다. – WrightsCS

+0

오, 음, 음, 그렇습니다. 텍스트 – WrightsCS

0

블라디미르해야하는 것은 당신이 UITextView 속성을 할당 할 NIB 파일을 사용하는 가정, 올바른 것입니다. NIB를 사용하지 않는다면 변수는 0이되고 문자열은 어디에도 할당되지 않습니다.

관련 문제