Сбросить все подпредставления UIView (например, текстовые поля) - PullRequest
2 голосов
/ 23 декабря 2011

Есть ли быстрый способ, как вернуть все подпредставления, такие как текстовые поля, метки и т. Д., В исходное состояние, как они есть, когда они инициализируются в первый раз? Я думаю, что dealloc и init снова не будет правильным путем?

Ответы [ 3 ]

2 голосов
/ 23 декабря 2011

dealloc обычно не должен использоваться.попробуйте init без alloc mylabel = [mylabel init], но вам, вероятно, лучше написать свой собственный метод сброса и явно сбросить каждое представление

1 голос
/ 23 декабря 2011

Лучшая практика гласит, что при выделении места в памяти для объекта; как только его использование закончится, вы должны освободить объект.

По вашему сценарию, если вы будете следовать этой практике; вам просто нужно освободить объект, когда его использование закончено с помощью метода [object release].

Тогда все будет автоматически, то, что вы действительно хотите в проблеме.

Надеюсь, эта информация полезна.

1 голос
/ 23 декабря 2011

Если вы думаете, что dealloc и init были бы несколько полезны, почему бы просто не вызвать release, а затем заново запустить все с помощью alloc и соответствующей комбинации init?

Я бы, вероятно, выбрал явный сброс кода, но если нет большого количества представлений, которые вы хотите сбросить, я не думаю, что release, alloc и init будут все слишком дорого.

...