移後的再上漿梯度在viewDidLoad中,我可以創建一個梯度沒有問題:iphone:從縱向到橫向
CAGradientLayer *blueGradient = [[CAGradientLayer layer] retain]; blueGradient.frame = CGRectMake(gradientStartX,gradientStartY,gradientWidth,gradientHeight);
其中gradientWith被設備定義爲320或1024作爲適當。
我不能做的是調整它的大小willRotateToInterfaceOrientation: - 因此在用戶切換到橫向模式之後擺脫右側的空白空間。 (導航欄和標籤欄的行爲很好)
(1)根據新的中點重新校準梯度的新維度,(2)使用kCALayerMaxXMargin,(3)使用邊界看起來好像他們會做工作。邊界看起來更直觀,所以我嘗試了這一點。
我不想承認我已經取得了零進展。
我會說我已經成功地嘗試了自我,視圖,圖層,邊界,藍色漸變和CGRect(gradientStartX,gradientStartY,newGradientWidth,newGradientHeight)的每一個排列的蠻力方法。
這並不難。我缺乏理解讓它變得困難。有人在那裏「在那裏,做到了」?
並設置通過或者使用調整大小「彈簧和支柱」的說法在IB,或將意見contentMode屬性。 – 2010-05-09 12:03:06
保羅 - 沒有,沒有IB。我沒有對contentMode做任何事情。正如我們在池塘這邊說的那樣,「普通香草」。 Pawel - [blueGradient setNeedsDisplay]結果爲「blueGradient undeclared」 Both - 哇,快速回復!謝謝。 – 2010-05-09 12:27:38
blueGradient是對漸變圖層的引用 - 當旋轉完成時,您需要保留以便調用它。 – Pawel 2010-05-09 12:39:10