サーチ…


備考

IBOutletは、予約語でも変数またはクラスでもなく、Interface Builderの構文上の砂糖です。 Objective-Cソースコードが前処理された後、それは何も解決されません。

スウィフトではそれはゼロとして解決されます。

<UIKit/UINibDeclarations.h>のように宣言されています。

#ifndef IBOutlet
#define IBOutlet
#endif

UI要素でのIBOutletの使用

一般に、IBOutletsは、ユーザーインターフェイスオブジェクトを別のオブジェクト(この場合はUIViewController)に接続するために使用されます。この接続は、オブジェクトが自分のコードやイベントにプログラム的に影響を与えるのを可能にします。これは単にストーリーボードからのアシスタントを使用し、要素からビューコントローラの.hプロパティセクションを制御しながらクリックするだけで実行できますが、プログラムで手動でIBOutletコードをオブジェクトの「接続」タブに接続することもできます右側のユーティリティーバー。ラベル出口を持つUIViewControllerの例を次に示します。

//ViewController.h
#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

//This is the declaration of the outlet
@property (nonatomic, weak) IBOutlet UILabel *myLabel;

@end

//ViewController.m
#import "ViewController.h"

@implementation ViewController

@synthesize myLabel;

-(void) viewDidLoad {

    [super viewDidLoad];
    //Editing the properties of the outlet
    myLabel.text = @"TextHere";
    
}

@end

そして迅速:

import UIKit
class ViewController: UIViewController {
    //This is the declaration of the outlet
    @IBOutlet weak var myLabel: UILabel!


    override func viewDidLoad() {
        super.viewDidLoad()
        //Editing the properties of the outlet
        myLabel.text = "TextHere"
    }
}

ストーリーボードオブジェクトとプログラムされたオブジェクトの間の接続は、.hのコンセントの宣言の左のドットが塗りつぶされている場合、接続されていることを確認できます。空の円は不完全な接続を暗示していました。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow