プログラムでラベルのテキストを変更するのに問題があります。
次のコードを実行すると、NSLogに「SettingmyLabel to = Hello World!」と表示されますが、画面のラベルは変更されません。
UIViewOverlay *overlayWindow;
overlayWindow = [[[NSBundle mainBundle] loadNibNamed:@"UIViewOverlay" owner:self options:nil] objectAtIndex:0];
[self addSubview:overlayWindow];
[overlayWindow setMyLabel:@"Hello World!"];
私のNIBファイルには、いくつかのラベルとボタンが付いた300x300のウィンドウがあります。アウトレットのmyLabelに接続されているラベルがあります。UIViewは表示されますが、プログラムでテキストを変更することはできません。
UIViewOverlay.h
#import <UIKit/UIKit.h>
@interface UIViewOverlay : UIView {
IBOutlet UILabel *myLabel;
}
- (void)setMyLabel:(NSString *) label;
@end
UIViewOverlay.m
#import "UIViewOverlay.h"
@implementation UIViewOverlay
- (void)setMyLabel:(NSString *) label {
myLabel.text = label; // THIS LINE IS NOT WORKING! :-(
NSLog(@"Setting myLabel to = %@", label); // This line is working.
}
@end
前もって感謝します..