광규니
광규니네
광규니
전체 방문자
오늘
어제
  • 분류 전체보기 (154)
    • 알고리즘 (100)
      • 알고리즘 개념 (2)
      • 문제 풀이 (96)
    • 주절주절 (19)
      • 자격증, 활동 후기 (4)
      • 전시회 후기 (3)
      • 이모저모 (2)
      • 회고 (3)
      • 뜨럼 (7)
    • 운영체제 (9)
    • 개발 지식 (9)
      • Apple Watch (4)
      • MySQL (2)
      • Eclipse (1)
      • XCode (1)
    • 네트워크 공부 (1)
    • 데이터베이스 공부 (5)
    • Java 공부 (7)
    • TMP (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 운영체제
  • 개념
  • 다이나믹 프로그래밍
  • 티스토리챌린지
  • BOJ
  • OS
  • 컴퓨터 사이언스
  • 애플워치 앱 만들기
  • 드린이
  • 구현
  • 애플워치 앱
  • 백준
  • 알고리즘
  • 오블완
  • DP
  • 자바
  • 파이썬
  • BFS
  • 합주
  • 프로그래머스

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
광규니

광규니네

개발 지식/Apple Watch

애플워치 앱 개발하기!! (3)

2021. 5. 7. 16:43
반응형

이번엔 버튼을 누르면 값이 올라가고 다음 인터페이스 컨트롤러로 넘기는 것을 해보겠습니다..!!

 

저번 시간처럼 japan interface controller랑 watchkit class 만들어주시고 연결해주세요

그 다음 그룹 하나 생성해서

안에 버튼 두개를 만들어줍시다

한 개는 대한민국, 하나는 일본이라 써주고

그 밑에 label을 하나 생성하구 

japan 인터페이스 컨트롤러도 마찬가지로 해줍시다

 

지금부터 할껀 국기를 보고 맞추면 +1, 틀릴 시 화면 전환을 하겠습니다.

 

korea class 입니다.

카운트 변수를 만들어주고 awake안에서 점수를 표시해줬습니다.

willActivate 랑 didDeactivate는 뭔지 잘 모르겠어요...

암튼 변수 선언하고 button과 label들을 이어주고

정답의 해당하는 버튼 클릭시 count+1 시켜준 뒤

pushController를 사용해서 다음 화면으로 이동하고 context 에 카운터를 넣어줬어요

withName 에 해당하는 게 다음 화면으로 이동하는 것이구

context는 변수를 담아서 넘길 수 있는 곳 같습니다.

//
//  korea.swift
//  test WatchKit Extension
//
//  Created by 정광균 on 2021/05/07.
//  Copyright © 2021 정광균. All rights reserved.
//

import WatchKit
import Foundation


class korea: WKInterfaceController {

    var count=0 //  점수를 담을 변수 하나 선언

    @IBOutlet weak var score: WKInterfaceLabel!//   label을 연결
    
    override func awake(withContext context: Any?) {
        super.awake(withContext: context)
//      현재 점수 표시
        score.setText("Score : \(self.count)")         // Configure interface objects here.
    }

    override func willActivate() {
        // This method is called when watch view controller is about to be visible to user
        super.willActivate()
    }

    override func didDeactivate() {
        // This method is called when watch view controller is no longer visible
        super.didDeactivate()
    }
//   대한민국 button과 연걸 정답 맞출시 count+=1
    @IBAction func korea_correct() {
        self.count=self.count+1
        pushController(withName: "japan", context: count)
    }
//   러시아 button과 연결 정답 틀리시 그냥 화면 이동
    @IBAction func korea_wrong() {
        pushController(withName: "japan", context: count)
    }
}

japan class입니다.

tmp를 전역 변수로 선언했습니다.

선언한 이유는...

awake내에서 korea.swift에서 context를 넘겨주는 걸 받고난 뒤, 

만약 japan 다음 usa를 만들어서 count를 넘겨주려고 했는데

넘겨주는 방법이랑 문법을 몰라서(swift 처음입니다 ㅜㅜ)

tmp 변수를 선언해줘서 count값을 받았습니당

 

암튼 

tmp를 정답일 시 +1, 오답일 시+0하고

pushController로 화면 전환 했습니당!!

//
//  japan.swift
//  test WatchKit Extension
//
//  Created by 정광균 on 2021/05/07.
//  Copyright © 2021 정광균. All rights reserved.
//

import WatchKit
import Foundation


class japan: WKInterfaceController {
//  전역변수용
    public var tmp=0
//  score와 연결,
    @IBOutlet weak var score_1: WKInterfaceLabel!
    override func awake(withContext context: Any?) {
        super.awake(withContext: context)
//      context로 넘긴 것 중에 int형이 있는 것을 가져와서 label 안에 setText 해줍니다.
//       또한 tmp=count
        if let count = context as? Int{
            score_1.setText("Score : \(count)")
            tmp=count
        }
        // Configure interface objects here.
    }

    override func willActivate() {
        // This method is called when watch view controller is about to be visible to user
        super.willActivate()
    }

    override func didDeactivate() {
        // This method is called when watch view controller is no longer visible
        super.didDeactivate()
    }
//  일본 button과 연결, 정답일 시 +1
    @IBAction func japan_correct() {
        tmp=tmp+1
        pushController(withName: "usa", context: tmp)
    }
//  중국 button과 연결, 오답일 시 +0 하고 다음 화면
    @IBAction func japan_wrong() {
        pushController(withName: "usa", context: tmp)
    }
}

이상으로 데이터를 다음 인터페이스 컨트롤러로 넘기는 시간을 가져봤습니당 !!

 

 

반응형
저작자표시 (새창열림)

'개발 지식 > Apple Watch' 카테고리의 다른 글

애플워치 앱 개발하기!! (4)  (0) 2021.05.07
애플워치 앱 개발하기!! (2)  (0) 2021.05.07
애플워치 앱 개발하기!! (1)  (0) 2021.05.06
    '개발 지식/Apple Watch' 카테고리의 다른 글
    • 애플워치 앱 개발하기!! (4)
    • 애플워치 앱 개발하기!! (2)
    • 애플워치 앱 개발하기!! (1)
    광규니
    광규니
    공부 및 일상 올리기~

    티스토리툴바