打开图像视图 点击封面流程

Posted

技术标签:

【中文标题】打开图像视图 点击封面流程【英文标题】:Open a view on image Click in cover flow 【发布时间】:2011-05-27 07:53:57 【问题描述】:

我在我的项目中使用封面流库。我的封面流包含许多图像。我想要做的是当我单击该图像时,另一个视图控制器应该打开。 请告诉我如何在该图像单击上打开另一个视图。 任何帮助将不胜感激。

【问题讨论】:

你用的是什么coverflow库? @JustSid blog.objectgraph.com/index.php/2010/04/09/… 【参考方案1】:

我昨天也遇到了同样的问题。我不得不改变框架中的一些东西。 在接口中添加这两个方法

@interface AFOpenFlowView : UIView
- (AFItemView *)selectedCoverView;
- (UIScrollView *)scrollView;

在.m文件中添加这两个方法的实现

@implementation AFOpenFlowView

- (AFItemView *)selectedCoverView 
return selectedCoverView;


- (UIScrollView *)scrollView 
return scrollView;

在您使用 AFOpenFlowView 的视图控制器中设置 UITapGestureRecognizer

- (void)viewDidLoad 
[super viewDidLoad];

UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(screenTapped:)];
[[self view] addGestureRecognizer:tapRecognizer];
[tapRecognizer release];

最后实现处理屏幕点击的方法

- (void)screenTapped:(UITapGestureRecognizer *)tap 

CGPoint point = [tap locationInView:[af scrollView]];

if (CGRectContainsPoint([[af selectedCoverView] frame], point)) 
            // Write here the code to open your view
            // Use [af selectedCoverView].number to get the index of the selected cover
    NSLog(@"selected cover view: %d", [af selectedCoverView].number);



希望它能为您节省一些时间! ;)

【讨论】:

它可以工作,但是现在有一个问题,只有当任何一个按钮被按下时,这个方法才会被调用怎么办? 请你解释一下 - (void)screenTapped:(UITapGestureRecognizer *)tap 方法代码 该方法所做的只是获取 AFOpenFlowView 内滚动视图内的点击位置,然后检查所选封面视图的框架是否包含点击。如果是这样,那么您可以在 if 块内执行任何您想要的操作。 @singingAtom:我尝试实现您的上述代码,但在 af.wat 出现错误,如果要避免错误,我应该怎么做..【参考方案2】:

请尝试其他FlowCover 这个很好用...

谢谢

【讨论】:

以上是关于打开图像视图 点击封面流程的主要内容,如果未能解决你的问题,请参考以下文章

如何在ios6.1中将表格视图列表显示为封面流

iOS - 在图像视图上点击手势问题

手机日历封面为啥不同时显示当天日期

如何在 tableview 中为图像设置动画以同时扩展和打开另一个视图控制器?

ios在按钮单击时打开图像

android中相机捕获的隐式意图