Я смотрел несколько видеороликов WWDC, и они говорили об использовании UIImageView, чтобы растянуть ваши изображения, чтобы не было лишней памяти. В их примере использовался небольшой текстовый пузырь, похожий на тот, который вы получаете при долгом нажатии на tableViewCell в приложении Music. Затем они говорят о том, как бы вам пришлось разделить его на 3 среза, левый, правый и центральный, поскольку центральная часть имеет маленький треугольник внизу, который указывает на таблицу ViewCell, которую вы долго нажимали. Могут ли некоторые объяснить, как кто-то делает это, поскольку они не предоставляют никакого кода в своем примере? Псевдокод в порядке. Глядя на документацию, я думаю:
создайте три UIImages наименьшего размера из вашего графического редактора:
UIImage *leftImage = [UIImage imageNamed:@"left.png"];
UIImage *rightImage = [UIImage imageNamed:@"right.png"];
UIImage *centerImage = [UIImage imageNamed:@"center.png"];
leftImage = [leftImage stretchableImageWithLeftCapWidth:0 topCapHeight:0];
rightImage = [rightImage stretchableImageWithLeftCapWidth:0 topCapHeight:0];
centerImage = [centerImage stretchableImageWithLeftCapWidth:0 topCapHeight:0];
UIImageView *leftImgView = [[UIImageView alloc] initWithImage:leftImage];
leftImgView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
UIImageView *rightImgView = [[UIImageView alloc] initWithImage:rightImage];
leftImgView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
UIImageView *centerImgView = [[UIImageView alloc] initWithImage:centerImage];
leftImgView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
// do I just add them all to the subview of self.view? Do I need to set their frames somewhere? If so, how do I know where they go since it's 3 slices making up an image.
// release memory
Мой связанный с этим вопросом вопрос: как бы вы поступили в IB? Например, вы заставляете 3 imageViews занимать весь экран, поскольку вы хотите, чтобы изображение расширялось?