Cómo colocar una vista personalizada en iOS sobre otra vista

Quiero lograr la siguiente vista personalizada sobreUIViewController . ¿Cuál es la mejor manera de lograrlo en lugar de usar addSubview? Quiero usar algo mejor.
Utilicé previamente el siguiente pero quiero usar algo mejor ahora

[self.view addSubview:NotConnected.view];

 [self.view removeFromSuperview];

He implementado código usandohttps://github.com/wimagguc/ios-custom-alertview.

No preferí usar la biblioteca, entonces, ¿cómo es posible personalizarUIViewController Sobre otraUIViewController como se muestra en la imagen de arriba. yo suelo

- (IBAction)ContinueToPayment:(id)sender {

    PayByVC *Newpage = [[PayByVC alloc] initWithNibName:@"PayByVC" bundle:nil];
    Newpage.checkOutInfoDict=checkOutDict;
    Newpage.modalPresentationStyle   = UIModalPresentationOverCurrentContext;
    Newpage.modalTransitionStyle     = UIModalTransitionStyleCrossDissolve;
    Newpage.view.backgroundColor     = [[UIColor blackColor] colorWithAlphaComponent:.4];
    Newpage.delegate = self;
    [self presentViewController:Newpage animated:YES completion:nil];


}

Para eliminar de super view he usado

 [self dismissViewControllerAnimated:YES completion:nil];

¿Cómo puedo colocar la vista de pago en el centro de la pantalla en todo tipo de orientación de pantalla?

Respuestas a la pregunta(3)

Su respuesta a la pregunta