0
我正在使用UIScrollView來顯示水平滾動的UIButtons。 現在,當我選擇並突出顯示一個按鈕時,我應該無法將該按鈕從視圖中移出。當時我只允許選擇一個按鈕。如何維護UIScrollView,使子視圖始終可見?
考慮的問題後:How to stop a UIScrollView at a specific point?並實施了以下內容:
-(void) scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{
if(targetContentOffset->x==0){
return;
}else if(targetContentOffset->x>self.maxScrollPoint.x){
targetContentOffset->x=self.maxScrollPoint.x;
}else if (targetContentOffset->x<self.maxScrollPoint.x+self.componentView.frame.size.width){
targetContentOffset->x=self.maxScrollPoint.x+self.componentView.frame.size.width;
}
}
哪裏maxScrollPoint是UIButton的在滾動型的起源。該實現允許用戶滾動到可見矩形之外,然後滾動回到按鈕的原點。
反正我有可以限制了滾動停止滾動超出該點,也超出了滾動的最大可視寬度(不contentsize)
我應該已經清楚scrollView中按鈕的位置不應該改變。我只是想確保整個可見的scrollView應該包含選定的按鈕,而不管其他什麼是可見的。 –
@EdAbe如果要使按鈕變爲不可見,是否要防止滾動視圖滾動? – michaelsnowden
是的。我想要在水平x軸上的按鈕的最大和最小位置滾動。 –