2014-10-12 3 views
0

모든 페이지에 레이블이 포함 된 페이지 된 UIScrollView를 만들었습니다. 그림 에서처럼 레이블 사이의 여백을 낮추고 스크롤 할 수있는 방법은 무엇입니까?레이블이있는 scrollMenu 페이드 아웃

현재 내 탐색 표시 줄은 다음과 같습니다. 어디 오른쪽으로 다음 페이지로 스 와이프하고 다음 레이블을 얻을 수 있습니다. 내가 원하는 무엇

enter image description here

작은 여유 같은 것을 아직도 슬쩍 할 수있는 것입니다.

enter image description here

의 viewDidLoad 코드

//Category ScrollView 
    categoryScrollView = UIScrollView(frame: CGRectMake(0, self.navigationController!.navigationBar.frame.height-38, self.view.frame.width, 38)) 
    categoryScrollView?.contentSize = CGSizeMake(self.view.frame.width, 38) 
    categoryScrollView?.delegate = self 
    categoryScrollView?.pagingEnabled = true 
    self.navigationController?.navigationBar.addSubview(categoryScrollView!) 

    categoryArray = NSArray(objects: "Book", "Elektronik") 

    var textWidth = 0 

    for val in categoryArray! 
    { 
     var textLabel: UILabel = UILabel() 
     textLabel.textAlignment = NSTextAlignment.Center 
     textLabel.text = val as NSString 
     textLabel.frame = CGRectMake(CGFloat(textWidth), 0, categoryScrollView!.frame.width, categoryScrollView!.frame.height) 


     categoryScrollView?.addSubview(textLabel) 

     textWidth = textWidth + Int(textLabel.frame.size.width) 

     if textWidth > Int(self.view.frame.width) { 
      categoryScrollView?.contentSize = CGSizeMake(CGFloat(textWidth), categoryScrollView!.frame.height); 

     } 


    } 

답변

0

pagingEnabled의 스위치가 "페이지"의 기본 가로 스크롤 뷰의 폭이다. 너비를 줄이고 포함 된보기를 clipsToBoundsfalse으로 설정하여보기 가장자리를 넘어서 보일 수 있습니다.

이도 당신을 위해 당신이 당신의 요구에 맞게 targetContentOffset을 조정할 수 UIScrollViewDelegate 방법 scrollViewWillEndDragging(...)를 통해 드래그의 끝을 차단하여 페이징 너비를 조정 할 수있는 옵션이 작동하지 않는 경우 (예를 들어 here 참조).

관련 문제