簡體   English   中英

UINavigationController-在所有視圖中保留背景圖像

[英]UINavigationController - Keep Background Image Across All Views

有沒有辦法使導航控制器中的所有視圖的背景圖像保持恆定? 目前,我正在每個視圖的viewDidLoad方法中加載相同的背景,但這顯示了從一個視圖導航到另一個視圖時背景圖像的移動。 我寧願開/關屏幕背景上的“幻燈片”的觀點的僅僅是內容,但背景逗留靜止。 這是我當前的背景圖片加載代碼:

UIImageView *background = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
background.image = [UIImage imageNamed:@"InfoBackground.png"];
[self.view addSubview:background];
[self.view sendSubviewToBack:background];
[background release];

謝謝!

嗯,也許如果您查看文檔 (向下滾動至圖2),您將會了解要處理的內容。 因為您正在為要推入UINavigationController的每個視圖控制器設置背景圖像,所以將獲得該動畫。 您需要做的是將背景圖像設置在導航控制器本身中。

我相信myNavController.view insertSubview:myImageView atIndex:0應該可以工作。 如果您的圖像需要准確地填充在內容視圖的后面,則可以根據導航欄和工具欄的坐標和/或高度來設置幀坐標,可以通過導航控制器的屬性來訪問它們。 如果不是,則將框架設置為超級視圖的邊界。

讓我知道事情的后續。

編輯:哦,請注意,您需要確保每個視圖控制器都具有透明背景。

我認為更好的主意是將背景圖像放在窗口上,並將所有視圖(所有viewcontroller的視圖)的背景色設置為清除顏色[UIColor clearColor]

如果您希望背景圖像是靜態的,那么只有一種方法,但我不知道這是不可能的,如果我們將圖像放在窗口中並使導航控制器透明,那么無論您做什么,它都將保持靜態。 因為在按下或彈出時我們不會更改窗口。

我只是建議以這種方式嘗試,而我還沒有這樣嘗試過。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM