2013-11-08 1 views
0

Я новичок в iOS. Я работаю над основанием UIScrollView. У меня 3 изображения в UIScrollView. У меня есть 2 UIButton s, у которых есть selector method для обмена Facebook и Twitter. Я хочу поделиться имиджем, который в настоящее время замечен в UIScrollView до Facebook & Twitter. Я застреваю при извлечении изображения в текущей точке прокрутки. После Googling я думаю, что что-то вроде UIPageController - это решение для меня. Но я не знаю, как его реализовать.Как проследить, какое изображение в настоящее время видно в моем Uiscrollview?

Пожалуйста, помогите мне разобраться. Спасибо!

ответ

0

Вы можете использовать контроллер страниц (в основном, вы разрешаете пользователю заканчивать прокрутку по определенному индексу). Или, когда пользователь прикасается к кнопке, вы можете получить contentOffset scrollView и сравнить это значение с началом кадра ваших изображений.

Предположим, вы создали свои образы с этими кадрами:

image1.frame = CGRectMake(0,0,320,250); 
image2.frame = CGRectMake(0,250,320,250); 
image3.frame = CGRectMake(0,500,320,250); 

Теперь, когда вы получаете действие:

-(IBAction)share:(id)sender { 
    CGPoint offset = self.scrollView.contentOffset; 
    if (offset.y < 250) { 
     //First image selected 
    }else if (offset.y > 500) { 
     //Third image selected 
    } else { 
     //Second image selected 
    } 
} 
+0

Сэр Это поможет мне, если вы дадите мне пример кода. –

0

Я бы сказал, у вас есть несколько вариантов здесь, это действительно дизайн вопрос ,

Простым (но также и не очень элегантным) подходом было бы получить текущее смещение вида прокрутки, используя его свойство contentOffset (в зависимости от того, прокручивается ли прокрутка по горизонтали или по вертикали, вы легко можете использовать x или y значение contentOffset).

Затем вы получаете значения позиции из ваших изображений (снова либо myImageView.frame.origin.x, либо myImageView.frame.origin.y), и затем вы можете рассчитать, какое из изображений теперь находится в смещении вида прокрутки.

Смежные вопросы