티스토리 뷰
반응형
안드로이드에서는 가속도계 사용 시 SensorManager을 사용합니다.
이와 같이 swift에서는 MotionManager가 존재 합니다.
포스트에서 공유할 내용은 클로저에서 커스텀하게 만든 함수 호출 방식으로 사용하였습니다.
var motionManager = CMMotionManager()
motionManager을 생성한 후에 sensor() 함수에서 가속도 센서를 시작하게 됩니다.
1 2 3 4 5 6 7 | func sensor(){ // accelerometerUpdateInterval 은 가속도 센서가 호출 간격을 설정하게 됩니다. motionManager.accelerometerUpdateInterval = 0.5 // 가속도 센서를 시작합니다. 가속도 센서의 리스너는 클로저로 처리되며, outputAccelerationData() 함수을 호출합니다. motionManager.startAccelerometerUpdates(to: OperationQueue.current!, withHandler: {accelerometerData, error in self.outputAccelerationData(acceleration: (accelerometerData?.acceleration)!)}) } |
가속도 센서의 값을 표시합니다.
1 2 3 4 5 | func outputAccelerationData(acceleration: CMAcceleration){ print("x = \(acceleration.x)") print("y = \(acceleration.y)") print("z = \(acceleration.z)") } |
outputAccelerationData 에서 전달받은 값을 이용하여, 앞, 뒤, 좌, 우 이동 조작작이 가능합니다. 자이로센서를 활용한 게임 및 교육 프로젝트 등 다양한 곳에서 사용 가능할 것으로 보입니다.
반응형
'프로그래밍 > iOS' 카테고리의 다른 글
[SWIFT] 스크롤 뷰에 xib View 불러오기 (0) | 2017.12.18 |
---|---|
[SWIFT]화면 터치 이벤트 받기 (UITableView, UIView) (0) | 2017.12.18 |
[SWIFT]옵셔널 (0) | 2017.12.18 |
[SWIFT] Navigation Bar 숨김( Hide) (0) | 2017.12.18 |
[SWIFT] 색상값을 UIColor 로 변환 (0) | 2017.12.18 |
댓글
최근에 올라온 글
최근에 달린 댓글
TAG
- DI
- 임용고시
- IOS
- 점수판
- RXjava
- Android Studio
- missioon
- flutter
- IT
- 알고리즘
- 디자인패턴
- 안드로이드
- push
- 선교
- Android
- 스코어헬퍼
- 코틀린
- view
- swift
- 미션차이나센터
- missionchina
- 패턴
- MCC
- 고시문헬퍼
- issue
- java
- Kotlin
- 탁구
- 고시문
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함