2013-02-16 3 views
1

SegmentControl이 내 테이블보기로 스크롤하지 않는 문제가 해결되었습니다. 그래서처럼, 내 테이블보기에서 컨트롤을 삽입하여 이런 짓을 :Embedded SegmentControl이 터치에 응답하지 않습니다.

UIView *headerView = [[UIView alloc] init ]; 
     [headerView addSubview:resultsSegment]; 
     self.tableView.tableHeaderView = headerView; 

이 ......

잘 작동하지만 지금은 세그먼트 제어에 클릭 할 수 없습니다. 이제는 임베디드되어있어 사용자 터치에 관한 한 기본적으로 TableView를 따르고 있습니다.

SegmentControl을 다시 "클릭 가능"하게 만드는 방법에 대한 아이디어가 있으십니까?

감사합니다.

답변

1

@eddieios에게 감사드립니다. 문제를 정리했는데 ... 원래의 대답에서 인용 한 대부분의 코드를 삭제했습니다.

나는 일을 코드로 내가 이걸 발견 대부분의 매개 변수를 설정하는 스토리 보드와 속성 관리자를 사용할 때 : 첫 번째 줄은 단순히 크기가 더 큰 segmentcontroller을 만들어 두 번째 줄하지

resultsSegment.frame = CGRectMake(50, 100, 250, 40); 
    [self.tableView addSubview:resultsSegment]; 

나만 스크롤하여 세그먼트 컨트롤러를 같은 위치에 유지하면서도 사용할 수 있습니다!

1

세그먼트 컨트롤이 tableView 뒤에 있지 않습니다. 그것은 tableView ON입니다.

segmentControl을 다시 클릭 할 수있게하려면 모든 segmentControl 속성을 설정해야합니다. 다음은 웹의 일부 예제 코드입니다.

NSArray *itemArray = [NSArray arrayWithObjects: @"One", @"Two", @"Three", nil]; 
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:itemArray]; 
segmentedControl.frame = CGRectMake(35, 200, 250, 50); 
segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain; 
segmentedControl.selectedSegmentIndex = 1; 
[segmentedControl addTarget:self 
        action:@selector(pickOne:) 
      forControlEvents:UIControlEventValueChanged]; 
[self.view addSubview:segmentedControl]; 
+0

속성 검사기를 사용하여 이러한 매개 변수를 모두 설정했습니다. 세그먼트가 작동하며 스크롤 할 때 위치가 유지되지 않습니다. 당신의 코드를 추가해도 그다지 큰 차이는 없습니다. –

+0

좋아, 네가 해결 한 것 같아. 명확히하기 위해 스크롤 할 때 tableView 위에 컨트롤을 유지해야합니다. 컨트롤을 tableView 헤더에 추가하면 컨트롤이 tableView로 스크롤됩니다. 행운을 빕니다. –

+0

이제는이 문제가 생겼습니다. 매우 이상합니다. http://stackoverflow.com/questions/14918055/scrolling-tableview-effects-response-time-of-segmentcontrol –

관련 문제