次の方法で共有


INBillDetails コンストラクター

定義

オーバーロード

INBillDetails(NSCoder)

unarchiver オブジェクトに格納されているデータからオブジェクトを初期化するコンストラクター。

INBillDetails(NSObjectFlag)

初期化をスキップし、単に オブジェクトを割り当てるために派生クラスで を呼び出すコンストラクター。

INBillDetails(IntPtr)

アンマネージド オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

INBillDetails(INBillType, INPaymentStatus, INBillPayee, INCurrencyAmount, INCurrencyAmount, INCurrencyAmount, NSDateComponents, NSDateComponents)

INBillDetails(NSCoder)

unarchiver オブジェクトに格納されているデータからオブジェクトを初期化するコンストラクター。

[Foundation.Export("initWithCoder:")]
[ObjCRuntime.DesignatedInitializer]
public INBillDetails (Foundation.NSCoder coder);
new Intents.INBillDetails : Foundation.NSCoder -> Intents.INBillDetails

パラメーター

coder
NSCoder

unarchiver オブジェクト。

属性

注釈

このコンストラクターは、(NIB 逆シリアル化中など) 非アーカイブからクラスを初期化できるようにするために提供されます。 これはプロトコルの NSCoding 一部です。

開発者がこのオブジェクトのサブクラスを作成し、アーカイブからの逆シリアル化を引き続きサポートする場合は、同じシグネチャを持つコンストラクターを実装する必要があります。型 NSCoder の単一パラメーターを取得し、[Export("initWithCoder:"] 属性宣言で修飾します。

このオブジェクトの状態は、コンパニオン メソッド EncodeTo を使用してシリアル化することもできます。

適用対象

INBillDetails(NSObjectFlag)

初期化をスキップし、単に オブジェクトを割り当てるために派生クラスで を呼び出すコンストラクター。

protected INBillDetails (Foundation.NSObjectFlag t);
new Intents.INBillDetails : Foundation.NSObjectFlag -> Intents.INBillDetails

パラメーター

t
NSObjectFlag

未使用の sentinel 値を渡します。NSObjectFlag.Empty を渡します。

注釈

このコンストラクターは、マネージド コードでオブジェクトを完全に構築し、単にランタイムが NSObject を割り当てて初期化する場合に、派生クラスによって呼び出される必要があります。 これは Objective-C が使用する 2 段階の初期化プロセスを実装するために必要です。最初の手順はオブジェクトの割り当てを実行することです。2 番目の手順はオブジェクトを初期化することです。 開発者は、NSObjectFlag.Empty を受け取るコンストラクターを呼び出すときに、オブジェクトのメモリを割り当てて Objective-C と C# オブジェクトをバインドするだけで、NSObject まで至るまでの直接パスを利用します。 オブジェクトの実際の初期化は開発者が行います。

通常、このコンストラクターは、オブジェクトを割り当てるためにバインディング ジェネレーターによって使用されますが、実際の初期化が行われるのを防ぎます。 割り当てが行われたら、コンストラクターは オブジェクトを初期化する必要があります。 バインド ジェネレーターによって生成されたコンストラクターでは、オブジェクトを初期化するために "init" メソッドのいずれかを手動で呼び出します。

NSObjectFlag.Empty パスを使用してチェーンアップする場合、オブジェクトを完全に初期化するのは開発者の責任です。

一般に、開発者のコンストラクターが NSObjectFlag.Empty 基本実装を呼び出す場合は、Objective-C init メソッドを呼び出す必要があります。 そうでない場合、開発者は代わりにクラス内の適切なコンストラクターにチェーンする必要があります。

引数の値は無視され、実行される唯一のコードが構築フェーズであることが確認されるのは、基本的な NSObject の割り当てとランタイム型の登録だけです。 通常、チェーンは次のようになります。

//
// The NSObjectFlag merely allocates the object and registers the
// C# class with the Objective-C runtime if necessary, but no actual
// initXxx method is invoked, that is done later in the constructor
//
// This is taken from Xamarin.iOS's source code:
//
[Export ("initWithFrame:")]
public UIView (System.Drawing.RectangleF frame) : base (NSObjectFlag.Empty)
{
// Invoke the init method now.
	var initWithFrame = new Selector ("initWithFrame:").Handle;
	if (IsDirectBinding)
		Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSend_CGRect (this.Handle, initWithFrame, frame);
	else
		Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSendSuper_CGRect (this.SuperHandle, initWithFrame, frame);
}

適用対象

INBillDetails(IntPtr)

アンマネージド オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

protected internal INBillDetails (IntPtr handle);
new Intents.INBillDetails : nativeint -> Intents.INBillDetails

パラメーター

handle
IntPtr

nativeint

アンマネージ オブジェクトへのポインター (ハンドル)。

注釈

このコンストラクターはランタイム インフラストラクチャ (GetNSObject(IntPtr)) によって呼び出され、アンマネージド Objective-C オブジェクトへのポインターの新しいマネージド表現を作成します。 開発者は、このメソッドを直接呼び出さないでください。代わりに GetNSObject メソッドを呼び出す必要があります。これにより、マネージド オブジェクトの 2 つのインスタンスが同じネイティブ オブジェクトを指すのを防ぐことができます。

適用対象

INBillDetails(INBillType, INPaymentStatus, INBillPayee, INCurrencyAmount, INCurrencyAmount, INCurrencyAmount, NSDateComponents, NSDateComponents)

[Foundation.Export("initWithBillType:paymentStatus:billPayee:amountDue:minimumDue:lateFee:dueDate:paymentDate:")]
[ObjCRuntime.DesignatedInitializer]
public INBillDetails (Intents.INBillType billType, Intents.INPaymentStatus paymentStatus, Intents.INBillPayee billPayee, Intents.INCurrencyAmount amountDue, Intents.INCurrencyAmount minimumDue, Intents.INCurrencyAmount lateFee, Foundation.NSDateComponents dueDate, Foundation.NSDateComponents paymentDate);
new Intents.INBillDetails : Intents.INBillType * Intents.INPaymentStatus * Intents.INBillPayee * Intents.INCurrencyAmount * Intents.INCurrencyAmount * Intents.INCurrencyAmount * Foundation.NSDateComponents * Foundation.NSDateComponents -> Intents.INBillDetails

パラメーター

billType
INBillType
paymentStatus
INPaymentStatus
billPayee
INBillPayee

追加する。

このパラメーターは、null に設定できます。

amountDue
INCurrencyAmount

追加する。

このパラメーターは、null に設定できます。

minimumDue
INCurrencyAmount

追加する。

このパラメーターは、null に設定できます。

lateFee
INCurrencyAmount

追加する。

このパラメーターは、null に設定できます。

dueDate
NSDateComponents

追加する。

このパラメーターは、null に設定できます。

paymentDate
NSDateComponents

追加する。

このパラメーターは、null に設定できます。

属性

適用対象