2013-06-14 2 views
0

여러 행과 열을 갖는 표준 세그먼트 컨트롤을 만드는 방법이 있습니까?
예를 들어 (광산이 아닌, Google 검색에서 빠른 것을 얻은 것) http://d1anb8nbe09bpc.cloudfront.net/94/eb/18/94eb1824b32d45df9cde7913e1aa6c15/table___axure_files/u192_normal.gif세그먼트 제어에서 여러 개의 열과 행이 필요합니까?

하지만 세그먼트 제어로 이것을하고 싶습니다. 그 그림에서, 세그먼트 컨트롤의 모든 세그먼트 인 3 개의 열과 4 개의 행을 상상해보십시오. 나는 세그먼트 컨트롤을 회전 관리 ..하지만 아무 생각이 어떻게 uicollection보기 안에 세그먼트 컨트롤을 넣어합니까?

아이디어가 있으십니까?

답변

0

버튼으로이를 수행 할 수 있습니다. 원하는 방식대로 레이아웃하고 표준 및 선택된 상태 값을 설정하십시오. 모든 버튼을 단일 IBAction 메소드에 연결하십시오. 그 방법에서는 모든 버튼에 대해 button.selected = NO를 설정하고 발신 버튼 button.selected = YES에 대해 설정합니다.

또는 UIControl을 직접 작성할 수도 있습니다.

업데이트

컬렉션 뷰를 사용하여 전환하는 임의의 수를 달성했다. 단일 선택 만 허용하도록 collectionview를 위로 설정하십시오. 이렇게하면 효과적으로 원하는 동작을 전환 할 수 있습니다. 시각적 하위 클래스 UICollectionViewCell을 얻으려면 setSelected :를 재정의하고 여기에서 셀 모양을 전환 할 수 있습니다. 추가 기능을 위해 collectionView : didSelectItemAtIndexPath :를 위임자 (일반적으로 View Controller)에 구현할 수 있습니다. UICollectionView에 대한 많은 자습서가 있습니다.

+0

collectionview를 사용하고 세그먼트 컨트롤에서 세그먼트를 전달할 수있는 방법이 있습니까? –

+0

세그먼트를 collectionview 셀에서 세그먼트 컨트롤에서 분리 할 수 ​​없습니다. 그러나 콜렉션 뷰 (셀/토글의 임의의 수에 맞춰 짐)를 사용하려면 단순히 콜렉션 뷰를 표준으로 작성하고 VC에서 didSelectItemAtIndexPath 대리자 메소드를 구현하면됩니다. collectionview를 설정하여 하나의 선택 만 허용하도록 할 수 있습니다. 그러면 효과적으로 후자의 동작을 전환 할 수 있습니다. UICollectionViewCell의 서브 클래스 인 시각적 인 측면을 달성하려면 setSelected를 재정의하십시오. 여기에서 셀의 모양을 전환 할 수 있습니다. –

+0

원래 답변을 업데이트했습니다. –

관련 문제