0

nib ファイルからカスタム ビューをロードするコードがありますが、そのカスタム ビューの変数に問題があります。

- (id)initWithFrame:(CGRect)frame
 { self = [super initWithFrame:frame];
if (self) {
    // Initialization code
    HomeMainView* views = (HomeMainView*)[[[NSBundle mainBundle] loadNibNamed:@"HomeMainView" owner:self options:nil] objectAtIndex:0];
    [self release];

    NSArray* permission = [NSArray arrayWithObjects:@"user_photos",@"publish_stream", nil];

    FBLoginView* fbLogin = [[[FBLoginView alloc] initWithPublishPermissions:permission defaultAudience:FBSessionDefaultAudienceFriends] autorelease];


    [views.FBLogin addSubview:fbLogin];
    [views.homeButton setTitle:@"asdf" forState:UIControlStateNormal];

    self = views;

}
return self;
 }

Nib ファイルによって生成されたビュー オブジェクトに fbLogin を追加しようとしています。問題は、views.FBLogin が認識されないセレクターを示すエラーを生成することです。

ここで何が悪いのか誰か知っていますか?

4

2 に答える 2

1

私は同じ問題を抱えていましたが、これをアプリのデリゲート didFinishLaunchingWithOptions に追加する必要があったためです。

[FBLoginView class]

これがないと、UIView は FBLoginView ではなく UIView であったため、セレクターが認識されませんでした。

于 2013-11-14T21:48:16.507 に答える
0

ビューのインターフェースビルダーでカスタムクラスを設定したことを確認してください。ビューを選択して cmd+option+3 を押し、カスタム クラスを設定します。

于 2012-11-11T20:52:10.483 に答える