2013-10-05 36 views
0

因此,我和我的好友一直在研究一個應用程序。我們有一個嵌入在ScrollView中的ImageView。它適用於iOS 5,但現在我們正在將其更新到iOS 7.我們現在必須使用自動佈局來使其再次看起來很漂亮。但是這會禁用滾動它。我們已經嘗試了一段時間來添加允許圖像再次滾動的代碼,但沒有任何幫助。Autolayout使ScrollView中的ImageView不可升級

我們已經嘗試了在陽光下我們可以找到的所有處理viewDidLoad(我們最初在iOS 5中執行此操作的地方)和viewDidAppear(我們添加的符合iOS 7和更好的實用性標準)的所有內容。任何建議將不勝感激,我們已經竭盡全力。

@property (weak, nonatomic) IBOutlet UIScrollView *Scroll; 
@property (weak, nonatomic) IBOutlet UIImageView *Image; 

... 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    // This is what we did for iOS 5 
    //self.Scroll.contentSize = self.Image.image.size; 
    //self.Image.frame = CGRectMake(0, 0, self.Image.image.size.width, self.Image.image.size.height); 
} 

-(void)viewDidAppear:(BOOL)animated 
{ 
    [super viewDidAppear:animated]; 

    //One of the many NEW attempts for iOS 7 
    self.Scroll.contentSize = CGSizeMake(self.Image.image.size.width,self.Image.image.size.height); 
} 

回答

1

您可能有錯誤地分配您的約束。

我能得到它與約束的工作:

NSDictionary *bindings = @{@"imageView": self.Image}; 
[self.Scroll addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[imageView]|" options:0 metrics:0 views:bindings]]; 
[self.myScrollView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[imageView]|" options:0 metrics:0 views:bindings]]; 

參見:https://stackoverflow.com/a/13548039/580291 並作爲指出:https://developer.apple.com/library/ios/releasenotes/General/RN-iOSSDK-6_0/index.html(搜索滾動型)

+0

我們沒有處理在iOS 5中有限制,我們如何知道我們是否正確/錯誤地分配了它們? – Ion

+0

我會推薦學習wwdc視頻的自動佈局。 – benuuu

+0

好吧,修好了。非常感謝你。 – Ion