2011-03-06 95 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];