2013-02-16 25 views
1

我已經解決了SegmentControl不在我的表視圖中滾動的問題。我這樣做是通過嵌入控制在我的表視圖,就像這樣:嵌入式段控制無法響應觸摸

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

這工作得很好......

,但現在我不能點擊段控制。現在它已經嵌入了,這意味着就用戶觸摸而言,它本質上是在桌面視圖的背後?

關於如何使SegmentControl再次「可點擊」的任何想法?

謝謝

回答

1

感謝@eddieios我沒有把問題排除....通過刪除我在原始答案中引用的大部分代碼。

,因爲我用故事板和屬性檢查器來設置最讓我發現這個參數是該工作的代碼:

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

第一行簡單的規模取得了segmentcontroller做大第二行不只允許我滾動並保持段控制器在相同的位置,但也使用它!

1

段控件不在tableView後面。它是在tableView上。

要使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

我已經使用屬性檢查器來設置所有這些參數。該細分受衆羣的作品,它只是不會停留在滾動的位置。添加你的代碼並不會影響它的效果。 – 2013-02-17 01:44:15

+0

好吧,看起來你已經完成了。爲了澄清,您需要將控件保持在tableView上方,以便在滾動時保持原位。將控件添加到tableView標題使控件與tableView一起滾動。祝你好運。 – 2013-02-17 02:45:32

+0

我現在有這個問題,雖然,很奇怪:http://stackoverflow.com/questions/14918055/scrolling-tableview-effects-response-time-of-segmentcontrol – 2013-02-17 04:43:42