¿Agrego mediante programación SubViews en ViewDidAppear, ViewDidLoad, ViewWillAppear, el constructor?

Estoy tratando de averiguar de Appleincompleto documentación sobre qué método es el mejor lugar para inicializar y agregar mis controles de Vistas a la vista del controlador.

Con winforms es bastante sencillo, ya que siempre se inicializan en el interiorInitializeDesigner, llamado en el constructor. Estoy tratando de igualar la fiabilidad de este patrón si es posible.

Estoy trabajando conUIViewControllers yUITableViewControllers dentro de unaUINavigationController la mayoría de las veces, si esto lo afecta todo.

Aquí hay un ejemplo:

public MyController()
{
    // Here?
    AddViews();
}

public override ViewDidLoad()
{
    base.ViewDidLoad();

    // Or is should it be here?
    AddViews();
}

public override ViewWillAppear(bool )
{
    base.ViewWillAppear(animated);

    // Here?
    AddViews();
}

public override ViewDidAppear(bool animated)
{
    base.ViewDidLoad(animated);

    // Or maybe here?
    AddViews();
}

void AddViews()
{
    UILabel label = new UILabel();
    label.Text = "Test";
    label.Frame = new RectangleF(100,100,100,26);
    View.AddSubView(label);

    UIWebView webview = new UIWebView();
    webview .Frame = new RectangleF(100,100,100,26);
    View.AddSubView(webview);
}

Obtengo resultados mixtos con algunos controles UIC cuando los agrego a la vista en diferentes lugares. Retraso visual a veces, otras veces la vista web está oculta en alguna parte.

¿Hay una regla general a seguir para agregarlos?

Respuestas a la pregunta(3)

Su respuesta a la pregunta