2011-03-06 96 views
2

查看当日应用程序的此screenshotiPhone:通过UIScrollView或UITableView覆盖图像

在应用程序的底部,最后一项变淡,文本被绘制在旧页面卷曲的自定义图形下。我非常肯定这是因为视图正在透明的图像下绘制。我如何能够覆盖UIScrollView或UITableView顶部的图像,使我可以得到这种效果,但触摸事件仍然由底层视图处理?

回答

4

您只需要在滚动视图或表格视图上方拖放图像视图。在界面生成器中,只需将图像视图的大小和位置放置在希望淡入淡出视图的区域。或者,在代码:

UIImageView *overlayView = [[UIImageView alloc] initWithImage:someImage]; 
[overlayView setFrame:someFrame]; 

// Your scroll view or table view would be a subview of this view 
[viewContainingScrollView addSubview:overlayView]; 
[viewContainingScrollView bringSubviewToFront:overlayView]; 

[overlayView release]; 

图像视图将默认忽略触摸,从而使触摸到在响应者链中的下图。这允许您的滚动视图或表格视图在图像视图占用的区域中选取触摸,而无需再编写任何代码。

如果你真的想确保,不过,你只需要简单地禁用图像视图的用户交互:

[overlayView setUserInteractionEnabled:NO];