2014-03-28 75 views
2

我構建了一個自定義Popoverview,但未能刪除內容的圓角。如何刪除PopoverView中的圓角?

試圖在幾乎所有發現的視圖中設置.layer.cornerRadius = 0.0,但沒有成功。

圖片鏈接:Custom Popover

紅色邊框的UIViewController用來初始化與UIPopoverController,綠色是定製UIPopoverBackgroundView的背景。從這個線程

+0

問題的屏幕截圖有助於檢查實際出現的問題! – Hemang

+0

此鏈接可能會幫助你http://stackoverflow.com/questions/11401530/uiview-default-styling-has-rounded-corners –

+0

@Hermang:無法添加圖像,需要10+的聲望:( – Michael

回答

5

答:UIView default styling has rounded corners?

有讓您的UIPopoverController內的觀點沒有圓角沒有支持的方法。 UIPopoverController的內部代碼將您的視圖添加到具有剪輯到邊界的圓角視圖。

可能存在一種做法,即等到顯示UIPopoverController,然後遍歷視圖的所有父視圖並將它們全部設置爲cornerRadius = 0;和clipsToBounds = NO ;,但即使您找到解決方案,它可能與iOS的所有版本都不兼容,如果Apple將來更改了UIPopoverController的某些內部代碼,那麼您的解決方案可能會中斷。

如果你真的想這樣做,那麼最好的方法是創建你自己的類來模仿UIPopoverController功能。

+0

已嘗試過一次沒有成功,但會再試一次 – Michael

+0

嗯,你可以隨時創建自己的視圖並添加所需的功能 –

+3

終於得到它的工作,建立一個自定義的UIPopoverController與它自己的'.presentPopoverFromRect'方法,調用'[super presentPopoverFromRect:]',然後設置'self.myViewController.view.superview.layer。 cornerRadius = 0.0;' clipsToBounds = NO好像不需要 – Michael