2012-09-21 2 views
2
[self.change setStringValue:[NSString stringWithFormat:@"%i", changeValue]]; 

여기서 change는 NSTextField 유형의 IBOutlet입니다. 어떤 이유로 든 텍스트 필드에 원하는 것을 표시 할 수 없습니다. 달릴 때마다 필드는 "0"입니다. 왜 변하지 않을지에 대한 아이디어가 있습니까?NSTextField가 업데이트되지 않습니다.

+0

self.change 및 changeValue 로깅을 시도하여 그들이 제공 한 내용을 확인하십시오. – rdelmar

+0

전에 언급 했어야합니다. changeValue는 괜찮습니다 (int). self.change는 나에게 객체를주고 self.change.stringValue는 changeValue와 같습니다 –

+0

이 텍스트 필드에 영향을주는 다른 코드가 있습니까? 어떤 위임 메소드가 구현 되었습니까? – rdelmar

답변

1

여기에 다른 사람들이 배울 수있는 당혹감이있는 신참 실수가 있습니다. 뷰가로드되기 전에 내 setstringvalue를 호출했습니다. didfinishlaunching 방법. awakefromnib 메소드를 사용하여보기가로드되었는지 확인하십시오. 비아 Apple :

Finally, after all the objects are fully initialized, each receives an awakeFromNib message. 
+0

이것은 applicationDidFinishLaunching에서 작동해야합니다 (awakeFromNib 이후에 호출 됨). 어떻게보기를로드하고 있습니까? 명시 적으로로드하고 있습니까, 아니면 앱 메인 창에 있습니까? – rdelmar

+0

앱의 기본 창입니다. 나는 did Finish도 일해야한다고 생각했다. .. 나는 혼란 스럽다 haha. –

0

콘센트가 실제로 xib 파일에 넣은 NSTextField와 연결되어 있는지 확인하십시오.

+0

나는 http://imgur.com/CpKOy를 믿습니다. 아마 내가하지 않은 무언가가 정말 바보 같을 것입니다. –

3

init에서 텍스트 필드 또는 팝 버튼을 업데이트하지 마십시오. 클래스가 초기화되면 awakeFromNib 또는 다른 일부 대리자에서 기본값을 채워야합니다.

관련 문제