2014-03-31 34 views
0

我是iOS新手,我想將UIView幀劃分爲N等於大小UIView幀基於UIView的中心點。如何劃分UIView N個相等的UIView

比如我做了一圈: http://s14.postimg.org/6w4xfa80h/i_OS_Simulator_Screen_shot_Mar_31_2014_7_03_03_P.png

同樣我也要做。但視角的形狀不是弧形,它應該與視圖矩形框架相同。

我該如何實現。

+2

而你的問題是......? – Fry

+0

請精心製作 –

+0

您已經提出了一個目標。你還沒有問過問題。即使你的目標不明確。你說你想把一個矩形分成N個正方形。然後你說你想把一個'UIView'分成一組相等大小的視圖。 **然後**你提到餅片,這是一個完全不同的問題。 **然後**您提到視圖的中心點,而不解釋與問題相關的內容。最後,你發佈一篇文章的鏈接,通過摺疊將一張紙分成相同數量的部分。總之,你的帖子是一個完全混亂。 –

回答

0

如果我理解正確,你正在試圖做的是創建視圖,看起來像下面這樣:

8-way split

注意這些地區是不是矩形的,所以他們不能視幀。它們是可以通過CGPath功能創建的形狀。 創建這些線條的簡單方法是使用CGPathAddLineToPoint。始終添加一條從視圖中心開始並沿y座標向下的線。你所要做的就是改變CGAffineTransform *m參數,反覆調用CGAffineTransformRotateangle = 2*pi/n,其中n是等份數。

假設你有一個CGAffineTransform t和上述角度,你會循環n次:

CGPathRef path = CGPathCreateMutable(); CGPathAddLineToPoint(path, CGAffineTransformRotate(t,angle), view.frame.center.x, view.frame.center.y + view.frame.size.y); // Now do something with that line....

+0

#Rikkles你正確,但在中心我有一個圈,我在圖中提到。在那種情況下,我的CGPathRef的代碼是什麼...... – nagarajan

+0

對包含內部圓的圖形上下文使用'CGContextClip'。它會自動剪切包含這些行的路徑。 – Rikkles

+0

#Rikkles實際上每個視圖作爲單個視圖我需要作爲相同的形狀。對於那個我怎麼寫我的CGPath點。就像上面的圖片中的每個餅片都是單獨的視圖,我在那個形狀上寫了layoutSubview方法。 – nagarajan