2013-04-22 29 views
0

我被要求在類似於滾動視圖的對象內的圖像上放置一些按鈕。框架中的相對點

添加這些按鈕沒有問題,但是當我將圖像縮小或變大時,按鈕相對於圖像的位置正在改變。

我該如何讓它留下來?

有沒有辦法使用myButton.frame = CGRectMake(30%,30%,x,y);或者其他類似的東西?

回答

0

您無法指定CGRectMake百分比參數。我相信解決您的問題在於UIViewAutoResizingMask屬性。將其設置爲UIViewAutoResizingNone可能會訣竅。

myButton.autoresizingMask = UIViewAutoresizingNone; 

在任何情況下,按鈕都不應該將resizingMask值設置爲任何邊距,否則它們會保持該邊距寬度不變。

編輯: 另一種方法可以重寫layoutSubviews方法,當你的ImageView /滾動視圖調整大小應叫:

- (void) layoutSubviews 
{ 
    [super layoutSubviews]; 

    for (UIView *view in self.subviews) { // Go through all subviews 

     if (view == scrollView) { // Find the scrollView object you want 
      //then find the scrollView's frame size and reposition the button objects 

     } 
    } 
} 
+0

你的意思是我應該我scrollView.autoresizingmask設置爲none? – user2295743 2013-04-22 08:33:02

+0

不,不是scrollView,而是它的子視圖(按鈕應該保持在相對於scrollView大小的相同位置)。 – 2013-04-22 08:35:31

+0

我嘗試了按鈕,scrollview和self.autoresizingmask ...沒有工作。 – user2295743 2013-04-22 08:36:29