Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何跟踪当前在我的Uiscrollview中看到的图像?_Ios_Objective C_Uiscrollview_Uiimageview_Offset - Fatal编程技术网

Ios 如何跟踪当前在我的Uiscrollview中看到的图像?

Ios 如何跟踪当前在我的Uiscrollview中看到的图像?,ios,objective-c,uiscrollview,uiimageview,offset,Ios,Objective C,Uiscrollview,Uiimageview,Offset,我是iOS新手。 我正在开发基于UIScrollView的应用程序。我在UIScrollView中有3个图像。 我有两个ui按钮s,它们有选择器方法用于Facebook和Twitter共享。 我想将当前在UIScrollView中看到的图像分享到Facebook&Twitter。 在当前滚动点提取图像时,我被卡住了。 谷歌搜索之后,我认为像UIPageController这样的东西是我的解决方案。 但我不知道如何实施它 请帮我整理一下。谢谢大家! 您可以使用页面控制器(基本上,您允许用户在特定索

我是iOS新手。 我正在开发基于
UIScrollView
的应用程序。我在
UIScrollView
中有3个图像。 我有两个
ui按钮
s,它们有
选择器方法
用于Facebook和Twitter共享。 我想将当前在
UIScrollView
中看到的图像分享到
Facebook
&
Twitter
。 在当前滚动点提取图像时,我被卡住了。 谷歌搜索之后,我认为像
UIPageController
这样的东西是我的解决方案。 但我不知道如何实施它


请帮我整理一下。谢谢大家!

您可以使用页面控制器(基本上,您允许用户在特定索引上结束滚动)。 或者,当用户触摸按钮时,您可以检索scrollView的contentOffset,并将该值与图像帧的原点进行比较

假设您使用以下帧创建了图像:

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 
    } 
}
-(iAction)共享:(id)发件人{
CGPoint offset=self.scrollView.contentOffset;
如果(偏移量y<250){
//选择的第一个图像
}否则,如果(偏移量y>500){
//选择第三个图像
}否则{
//选择第二个图像
} 
}

我想说,这里有多种选择,这确实是一个设计问题

一种简单(但也不是很优雅)的方法是使用其
contentOffset
属性获取滚动视图的当前偏移量(取决于滚动视图是水平滚动还是垂直滚动,您可以轻松使用
contentOffset
的x或y值)

接下来,从图像视图中获取位置值(同样是
myImageView.frame.origin.x
myImageView.frame.origin.y
),然后可以计算哪些图像视图当前处于滚动视图的偏移位置