5

Quiero agregar un botón en una vista dinámicamente. Aquí está el código.UIButton: ¿deberíamos lanzar o no?

UIButton *x=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 

Aquí, no he usado la función "alloc".

Las preguntas para estas declaraciones son las siguientes.

  • Si utilizamos la vista de imagen para la misma situación, debemos crear una vista de la imagen temporal para agregarla a su vista actual y soltarla. ¿Qué hacer para el botón?
  • ¿Cómo se asignan y se asignan los botones?
  • ¿Si se asignan botones? ¿Cómo se gestiona la memoria?
  • Ahora cuando uso [x release]; - ¿Es correcto o incorrecto?

Respuesta

10

No alloc/init o nuevo, por lo que se liberará automáticamente cuando ya no sea necesario. Cuando lo agrega a UIView, la cuenta incrementa y retiene el recuento, luego también se libera cuando se lanza la vista.

1

En este caso, no necesita llamar al release. Como está utilizando un constructor de conveniencia, el objeto que se devuelve es un objeto liberado automáticamente.
Si usa un formulario alloc/init, usted es responsable de liberar el objeto.

0
UIButton *x=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 

usando este método u cant relese el botón

lugar de uso

UIButton *x = [[UIButton alloc]init]; 

y luego liberar

Cuestiones relacionadas