Język

MKMapView Konstruktory

Definicja

Przeciążenia

Nazwisko Opis
MKMapView()

Tworzy nowy MKMapView z wartościami domyślnymi.

MKMapView(CGRect)

Inicjuje element MKMapView z określoną ramką.

MKMapView(NSCoder)

Konstruktor, który inicjuje obiekt z danych przechowywanych w obiekcie unarchiver.

MKMapView(NSObjectFlag)

Konstruktor do wywołania klas pochodnych, aby pominąć inicjowanie i jedynie przydzielić obiekt.

MKMapView(NativeHandle)

Konstruktor używany podczas tworzenia zarządzanych reprezentacji niezarządzanych obiektów. Wywoływane przez środowisko uruchomieniowe.

MKMapView()

Tworzy nowy MKMapView z wartościami domyślnymi.

[Foundation.Export("init")]
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
public MKMapView();
Atrybuty

Dotyczy

MKMapView(CGRect)

Inicjuje element MKMapView z określoną ramką.

[Foundation.Export("initWithFrame:")]
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
public MKMapView(CoreGraphics.CGRect frame);
[<Foundation.Export("initWithFrame:")>]
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new MapKit.MKMapView : CoreGraphics.CGRect -> MapKit.MKMapView

Parametry

frame
CGRect

Ramka używana przez widok wyrażona w punktach systemu iOS.

Atrybuty

Uwagi

Ten konstruktor służy do programowego tworzenia nowego wystąpienia ELEMENTU MKMapView z określonym wymiarem w ramce. Obiekt będzie wyświetlany tylko po dodaniu go do hierarchii widoków przez wywołanie funkcji AddSubview w widoku zawierającym.

Ten konstruktor nie jest wywoływany podczas deserializacji obiektów z scenorysów lub plików XIB; Zamiast tego wywoływany jest konstruktor, który przyjmuje parametr NSCoder.

Dotyczy

MKMapView(NSCoder)

Konstruktor, który inicjuje obiekt z danych przechowywanych w obiekcie unarchiver.

[Foundation.Export("initWithCoder:")]
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
[ObjCRuntime.DesignatedInitializer]
public MKMapView(Foundation.NSCoder coder);
[<Foundation.Export("initWithCoder:")>]
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
[<ObjCRuntime.DesignatedInitializer>]
new MapKit.MKMapView : Foundation.NSCoder -> MapKit.MKMapView

Parametry

coder
NSCoder

Obiekt unarchiver.

Atrybuty

Uwagi

Ten konstruktor jest dostarczany, aby umożliwić inicjowanie klasy z niearchiver (na przykład podczas deserializacji NIB). Jest to część NSCoding protokołu.

Jeśli deweloperzy chcą utworzyć podklasę tego obiektu i nadal obsługiwać deserializacji z archiwum, powinni zaimplementować konstruktor z identycznym podpisem: biorąc jeden parametr typu NSCoder i ozdobić go atrybutem [Export("initWithCoder:"] .

Stan tego obiektu można również serializować przy użyciu metody towarzyszącej EncodeTo(NSCoder) .

Dotyczy

MKMapView(NSObjectFlag)

Konstruktor do wywołania klas pochodnych, aby pominąć inicjowanie i jedynie przydzielić obiekt.

[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected MKMapView(Foundation.NSObjectFlag t);
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new MapKit.MKMapView : Foundation.NSObjectFlag -> MapKit.MKMapView

Parametry

t
NSObjectFlag

Nieużywane wartości sentinel, przekaż NSObjectFlag.Empty.

Atrybuty

Uwagi

Ten konstruktor powinien być wywoływany przez klasy pochodne, gdy całkowicie skonstruują obiekt w kodzie zarządzanym i chcą, aby środowisko uruchomieniowe przydzieliło i zainicjowało NSObjectobiekt . Jest to wymagane do zaimplementowania dwuetapowego procesu inicjowania, który Objective-C używa, pierwszym krokiem jest wykonanie alokacji obiektu, drugi krok polega na zainicjowaniu obiektu. Gdy deweloperzy wywołują ten konstruktor, korzystają z bezpośredniej ścieżki, która przechodzi aż do tego, aby NSObject jedynie przydzielić pamięć obiektu i powiązać Objective-C i obiekty języka C#. Rzeczywista inicjalizacja obiektu jest do dewelopera.

Ten konstruktor jest zwykle używany przez generator powiązań do przydzielenia obiektu, ale zapobiega rzeczywistej inicjalizacji. Po zakończeniu alokacji konstruktor musi zainicjować obiekt. W przypadku konstruktorów generowanych przez generator powiązań oznacza to, że ręcznie wywołuje jedną z metod "init", aby zainicjować obiekt.

Jest to odpowiedzialność dewelopera za całkowite zainicjowanie obiektu, jeśli utworzy łańcuch przy użyciu tego łańcucha konstruktorów.

Ogólnie rzecz biorąc, jeśli konstruktor dewelopera wywołuje odpowiednią implementację podstawową, powinien również wywołać metodę Objective-C init. Jeśli tak nie jest, deweloperzy powinni zamiast tego łączyć się z odpowiednim konstruktorem w swojej klasie.

Wartość argumentu jest ignorowana i zapewnia jedynie, że jedynym wykonywanym kodem jest faza budowy to podstawowa NSObject rejestracja alokacji i typu środowiska uruchomieniowego. Zazwyczaj łańcuch wygląda następująco:

//
// The NSObjectFlag constructor merely allocates the object and registers the C# class with the Objective-C runtime if necessary.
// No actual initXxx method is invoked, that is done later in the constructor
//
// This is taken from the iOS SDK's source code for the UIView class:
//
[Export ("initWithFrame:")]
public UIView (CGRect 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 {
        unsafe {
            var __objc_super__ = new ObjCRuntime.ObjCSuper (this);
            Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSendSuper_CGRect (&__objc_super__, initWithFrame, frame);
        }
        GC.KeepAlive (this);
    }
}

Dotyczy

MKMapView(NativeHandle)

Konstruktor używany podczas tworzenia zarządzanych reprezentacji niezarządzanych obiektów. Wywoływane przez środowisko uruchomieniowe.

[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected internal MKMapView(ObjCRuntime.NativeHandle handle);
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new MapKit.MKMapView : ObjCRuntime.NativeHandle -> MapKit.MKMapView

Parametry

handle
NativeHandle

Wskaźnik (uchwyt) do niezarządzanych obiektów.

Atrybuty

Uwagi

Ten konstruktor jest wywoływany przez infrastrukturę środowiska uruchomieniowego (GetNSObject(IntPtr)), aby utworzyć nową zarządzaną reprezentację wskaźnika dla niezarządzanego obiektu Objective-C. Deweloperzy nie powinni wywoływać tej metody bezpośrednio, zamiast tego powinni wywołać GetNSObject(IntPtr) metodę , ponieważ zapobiegnie dwóm wystąpieniom obiektu zarządzanego wskazującego ten sam obiekt macierzysty.

Dotyczy