2011-08-17 54 views
2

因此,我正在創建一個iPad應用程序,我需要截取tableview並在稍後顯示它,類似於iPad safari標籤頁。我需要在兩個方向上截取屏幕截圖,而不必實際改變方向。我怎樣才能實現這一點?iOS截取tableview的截圖

回答

1

您所描述的內容超出了任何「截圖」的限制。您需要手動生成表格視圖的圖像。如果視圖很簡單(即一些文本,分隔符等),則可以使用CoreGraphics或類似的東西從頭開始繪製圖像。我維護一個名爲ANImageBitmapRep的開源類,它允許輕鬆進行像素級和上下文級圖像處理。在這種情況下,你很可能會利用核心顯卡,但這裏是你將如何在第一時間產生背景:

ANImageBitmapRep * irep = [[ANImageBitmapRep alloc] initWithSize:BMPointMake(myWidth, myHeight)]; 
CGContextRef context = [irep context]; 
// ... 
// use context here to manually generate your "screenshot." 
// ... 
[irep setNeedsUpdate]; // tell the image bitmap rep to update its image 
UIImage * savedImage = [irep image]; // get a UIImage for storing 
[irep release]; // free the memory 

與CoreGraphics中繪製一個小教程可以在http://idevhub.com/exploring-iphone-graphics-part-1/找到。

+0

任何想法如何iPad的Safari瀏覽器獲取水平圖像,當你在標籤頁上打開設備? –

+0

我假設他們實際上在「預覽」視圖中渲染頁面(使用UIKit),並使用CoreAnimation縮放頁面,但我可能會離開。 –