Оперативная память


Технологии Iphone, оперативная память

Далее выберите кнопку New Photo or Video и вызовите инспектор связей. Проведите соединительную линию от события Touch Up Inside к пиктограмме Files Owner и выберите действие shootPictureOrVideo:.


И наконец, выберите кнопку Pick from Library, проведите соединительную линию от события Touch Up Inside к пиктограмме Files Owner и выберите действие selectExisting PictureOrVideo:. Установив все эти связи, сохраните внесенные изменения и вернитесь в среду Xcode.


Приведенное выше объявление интерфейса несколько отличается от представленного ранее в наших статьях. Это так называемая безымянная категория, позволяющая объявлять ряд методов, которые будут в дальнейшем реализованы при определении класса. В данном случае указываются служебные методы, предназначенные только для применения в самом классе.


Обратите также внимание на то, что мы объявили в данном коде обычную функцию С. Безымянная категория может содержать только методы, поэтому данная функция, формально выражаясь, не относится к этой категории. Но с точки зрения структурирования кода она "принадлежит" рассматриваемому здесь классу, поэтому мы и перечисляем ее.


Теперь перейдем к определению класса. Метод viewDidLoad будет скрывать кнопку takePictureButton в том случае, если в мобильное устройство, на котором выполняется рассматриваемое здесь приложение, не встроена фотокамера. Кроме того, в данном методе выбирается прямоугольная рамка представления imageView, поскольку она понадобится в дальнейшем. Помимо этого, мы реализуем метод viewDidAppear:, чтобы вызывать из него метод updateDisplay, который нам еще не приходилось реализовывать. В связи с этим очень важно понимать отличия, имеющиеся у методов viewDidLoad и viewDidAppear:. Первый из них вызывается лишь в тот момент, когда представление только загружено в оперативную память, тогда как второй вызывается всякий раз, когда представление отображается, что происходит как во время запуска приложения, так и при возврате к текущему контроллеру после отображения очередного полноэкранного представления, в том числе и селектора изображений.


Как только вы введете приведенный раньше код, можете удалить закомментированный вариант метода viewDidLoad, чтобы избежать в дальнейшем конфликта разных версий данного метода.


Введите код, в уже имеющиеся методы viewDidUnload и dealloc. Как правило, в методе viewDidUnload избавляются от представлений, но в данном случае нам нужно избавиться также от объекта moviePlayerController. В противном случае этот контроллер зависнет, даже если для него и не останется ни одного представления, которое нужно было бы отображать.


  • Дата: 31-01-2015, 10:52

Предыдущие статьи сайта:

Понравилась статья? Ставь лайки, рассказывай друзьям!



Отзывы о статье: Оперативная память

Технологии, секреты и фишки Apple: Iphone, iPad, iPod