Agregar una nueva vista a otra subvista

Estoy aprendiendo iOS. Estoy usando Xcode 4.3.2, y he creado un botón, y en la devolución de llamada, he usado el siguiente código.

1) Creación de una aplicación de vista única 2) creación de una nueva vista -> newV 3) creación de un botón pero; 4) agregando pero como una subvista de newV. 5) agregar newV como una subvista de la vista principal.

-(IBAction) submitButtonPressed:(id)sender
{
    NSLog (@" Submit Button is pressed ");
    UIView *newV = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];
    newV.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.5];

    UIButton *but = [[UIButton alloc] init];
    [but setTitle:@"SubView" forState:UIControlStateNormal];
    [newV addSubview:but];
    [self.view addSubview:newV];

}

Pero el problema que tengo es que solo se muestra la vista viewV, pero no se muestra el botón. Cómo resolver este problema ?

preguntado el 22 de mayo de 12 a las 18:05

simplemente use initWithFrame en lugar de init para UIButton y se mostrará en su vista. -

2 Respuestas

Cuando creó el botón, no proporcionó un marco. Intenta usar:

UIButton* but = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, buttonWidth, buttonHeight)];

Cuando creó el botón, tenía un tamaño cero, por lo que no podía verlo.

contestado el 22 de mayo de 12 a las 19:05

Intente agregar el botón después de agregar la vista newV.

contestado el 22 de mayo de 12 a las 18:05

Cambié como sugeriste, pero aún no puedo ver el botón. - Quién soy

Lo siento, malinterpreté la pregunta y estaba pensando que el botón era parte de la vista principal. Noté que no hay un marco para el botón. - CBredlow

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.