Skip to content

Latest commit

 

History

History

MGUFlatSwitch

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

MGUFlatSwitch

Swift Objective-C
iOS

MGUFlatSwitch

  • 완료 및 체크를 상징하는 애니메이팅 가능한 커스텀 스위치
    • UIControl 서브클래스로 제작함
  • IV-Drop을 만들면서 완료를 표기하는 애니메이션 요구사항이 있어서 제작함.

Features

  • lineWidth 설정 가능
  • animationDuration 설정 가능
  • CompletionHandler 제공
  • Interface Builder에서 설정가능 - 그러나 XCode 자체 렌더링 버그가 있기 때문에 추천하지 않는다.
    • Swift : @IBDesignable @IBInspectable
    • Objective-C : IB_DESIGNABLE IBInspectable
  • Swift and Objective-C compatability
  • Written in Objective-C

Preview

  • IV-Drop을 만들면서 완료를 표기하는 애니메이션 요구사항이 있어서 제작함.
MGUFlatSwitch Samples IV-Drop에서 사용한 예

Usage

Swift

let flatSwitch = MGUFlatSwitch(frame: CGRectMake(0.0, 0.0, 50.0, 50.0))
flatSwitch.lineWidth = 3.0
flatSwitch.baseCircleStrokeColor = baseCircleStrokeColor
flatSwitch.checkMarkNCircleStrokeColor = checkMarkNCircleStrokeColor
flatSwitch.addTarget(self, action:#selector(switchClicked(_:)), for: .valueChanged)
view.addSubview(flatSwitch)

Objective-C

self.flatSwitch = [[MGUFlatSwitch alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
self.flatSwitch.lineWidth = 3.0;
self.flatSwitch.baseCircleStrokeColor = baseCircleStrokeColor;
self.flatSwitch.checkMarkNCircleStrokeColor = checkMarkNCircleStrokeColor;
[self.flatSwitch addTarget:self action:@selector(switchClicked:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:self.flatSwitch2];

Interface Builder

Author

sonkoni(손관현), isomorphic111@gmail.com

Credits

Inspired by Dribbble post

License

This project is released under the MIT License. See LICENSE for more information.