2009-06-22 4 views
13

내 UISegmentedControl에는 8 개의 번호가 매겨진 세그먼트가 있습니다. 사용자가 2, 3 또는 그 이상을 한 번에 켤 수있게하고 싶습니다. 그들을 토글합니다. 본질적으로 한 비트의 비트를 좋아한다. 이것이 가능한가? 나는 이것이 일반 Mac OS X에 있다고 믿지만, iPhone SDK에서 그 방법을 찾을 수없는 것 같습니다. 뷰의 모서리 라운드UISegmentedControl의 여러 세그먼트를 선택하려면 어떻게합니까?

  1. 는 "바"스타일 UISegmentedControl처럼 보이도록 :

    내가보기에 버튼을 넣어이 문제를 시뮬레이션해야하는 경우, 다음을 수행 할 수있는 방법은 무엇입니까?

  2. 는 버튼의 "바"스타일이 내장 된 배경을 사용하여?
  3. 버튼에 전체 "바"스타일과 같은 그림자가 있습니까? (텍스트가 아님)

답변

8

UIKit을 사용하여 불가능합니다. 사용자 지정 컨트롤을 만들거나 UISwitch 배열을 사용하여 UISegmentedControl의 각 옵션을 나타내는 것이 좋습니다.

2

가장 간단한 방법은 UIButton을 사용하여 세그먼트 화 된 컨트롤을 만드는 것입니다.

마르코

+3

한 가지 방법은, 둥근 가장자리와 UILabel의를 사용하고 내부 직사각형 UIButtons를 넣어하는 것입니다. 이렇게하면 결합 된 컨트롤의 둥근 모서리를 얻을 수 있습니다. 즐겨. –

1

지금 엑스 코드에서이 작업을 수행 할 수있는 방법이있을 나타납니다. Attributes Inspector에는 Segment, Title, Image, Behavior가있는 섹션이 있습니다. 동작 옵션은 "Enabled"및 "Selected"입니다. 여러 세그먼트에 대해 "선택됨"을 선택할 수 있습니다.

+9

나는 이것이 작동한다고 생각하지 않는다. Xcode에서 세그먼트에 대해 "선택됨"을 선택하면 다른 세그먼트는 모두 선택 취소됩니다. 또한 UISegmentedControl의 메소드에는 setEnabled : forSegmentAtIndex가 포함되지만 setSelected : forSegmentAtIndex는 포함되지 않습니다 (이 방법이 유용 할 것입니다). 나는 OP와 같은 것을하려고 노력하고있다. 그리고 그것은 내가 주문의 통제를 만들어야하는 것처럼 보인다. Xcode 자체의 도우미 버튼이 내가 쏘고있는 것과 정확히 같은 아이러니 컬 종류 (Mac app). –

6

이 동시에 선택하는 여러 세그먼트를 할 수 있습니다 내가 찾은 최고의 사용자 정의 컨트롤입니다.

https://github.com/stewartmacdonald/MultiSelectSegmentedControl

을하고 읽어에 몇 가지 코드 예제를 추가하고 당신이 선택한 모든 세그먼트의 제목의 NSArray를 얻을 수있는 방법을 추가 : 여기를 포크했습니다. 내가 운송 응용 프로그램에서 수행 한 어떤이를 할

+0

'MultiSelectSegmentedControl'가 아주 좋은의 서브 클래스입니다. 그것은 모든 메소드가 사용 가능하도록'UISegmentedControl'을 확장합니다. –

관련 문제