오늘의 주제

1. 계산기 기능 넣기
2. 메모장 화면 구성 바꾸기



쉰 한 번째 시간입니다.^^

지난 번에 만들어 놓은 계산기 아직 잘 갖고 계신가요?ㅎㅎㅎ
이제 계산기 로직을 완성해 볼 차례입니다.

아............. 지금 제가 글을 쓰고 있는 이 시간은 아직 훈련소에 가기 전이지만, 전 지금 훈련소에서 뒹굴고 있겠군요 ㅋㅋㅋㅋㅋㅋㅋㅋ

뭐, 응원의 한마디...는 볼 수 없겠지만 무탈히 돌아오도록 기도해주세요 ㅋㅋㅋㅋㅋ

2일 전인데 한달이라도 막상 가려니까 싱숭생숭 하네요 ㅋㅋㅋ

아마 들어가기 전까지도 계속 블로그 포스팅 예약을 하다 갈거 같은..ㅋㅋㅋㅋㅋㅋㅋㅋ

뭐 여튼 사설은 각설하고 시작해 봅니다~~~~~~~~~~~~~


# 계산기 기능 완성하기

일단, 지난번에 구현파일에 만들어 주었던 enum을 헤더로 옮겨옵니다. 거기에 FUNC_INVALID도 추가해줬어요 ㅎ

그리고 아래 interface에 enum 변수 하나를 만들어 주었구요~

enum이 뭔지 잘 모르겠다 하시는 분들은
2012/05/24 - [C] - C <20>. enum 

을 참고해 주세요 ㅎㅎㅎ


자, 이제 다시 구현파일로 넘어와서~

일단, 변수 초기화를 따로 메소드로 빼주었습니다. 왜냐면 2번 이상은 사용할 것 같거든요 ㅎㅎㅎ C버튼 눌렀을 때랑, 처음 viewDidLoad되었을 때. 생각난김에 메소드로 빼주고 viewDidLoad에서 호출도 해 줍니다.


자, 그리고 화면에 숫자를 출력해 줄만한 메소드도 하나 따로 빼줍니다 ㅎㅎㅎ


자, 그리고 이제 계산을 해 줄 메소드를 하나 만들어 줍니다. 아마도 = 버튼을 눌렀을 때 요녀석이 실행이 되겠죠?ㅎㅎㅎ
(현재 로직은 약간 틀린 부분이 있습니다만, 아래쪽에서 조금 수정을 해 줄거예요. 일단 요렇게 작성해 주세요..ㅎㅎㅎ)


자, 그리고 숫자 버튼을 눌렀을 때 동작할 메소드를 채워넣어 줍니다.


자, 그리고 기능키를 눌렀을 때 어떻게 동작할지를 버튼과 연결된 메소드에 채워넣어 줍니다 ㅎㅎ
switch문이 아직도 헷갈리는 분들은
2011/12/14 - [C] - C <7>. 조건문(2) switch 
참고 해 주시면 좋을 것 같네요 ㅎㅎ 


자, 그리고 나서 실행 해 봅니다. command + R
어때요 ㅎㅎㅎ 잘 동작하나요?
이것저것 해보다 보면 뭔가 약간 안맞는게 있습니다...ㅎㅎㅎ
네......그렇죠 ㅎㅎㅎ
2 + 3 하고 = 을 누르면 5가 나옵니다.
그리고 또다시 = 을 누르면 8이 나와야 하는데 7이 나올거예요... 흐음... 로직에 문제가 있다!!!!!!!!!!!! (제가 새벽에 정신이 혼미한 상태로 하다보니...)ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

그래서 수정해 줬습니다.
헤더파일에 와서 새로운 flag 변수를 하나 만들어 주었구요~


구현파일에 와서 약간의 조건을 추가해 줍니다. 기존에 변수에 저장하던 값들도 살짝 바꿔줬구요.


그리고 계산부분의 변수들도 살짝 바꿔줬습니다 ㅎㅎ



자, 그리고 다시 실행!!!!!!

어떠세요? 잘 동작하나요?

제가 계산기를 잘 안써봐서 로직을 생각해 보려고 한참 쑈를 했었더랬죠... 계산기 한 번만 켜서 해보면 되는것을...ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

여튼 뭐 이렇게 초간단 계산기가 완성되었습니다~!

가로 모드로 바꾸면 공학용 계산기가 나오게도 해보고 싶었으나... 시간이 없는 관계로(낼모레 입소... 'ㅁ') 메모장으로 넘어가 볼게요 ㅋㅋㅋ



# 메모장 화면구성 변경

지난번에 메모장 화면도 조금 만들어 놨었는데요, 살짝만 바꾸도록 합니다 ㅎㅎ


다들 그림만 보고 이해는 하셨으리라 믿습니다 ㅎㅎㅎ

자, 이제 본격적으로 메모장 구현은?

다음 포스팅에......ㅋㅋㅋ



by yagom

facebook : http://fb.yagom.net

twitter : http://twitter.yagom.net ( @yagomsoft )

p.s 제 포스팅을 RSS 피드로 받아보실 수 있습니다.

RSS Feed 받기   


↓↓↓저 열심히 썼는데 손가락 한방 꾹 눌러주고 가시는 건 어떨까요? 로그인이 필요 없습니다. ^~^ 고맙습니다~ ↓↓↓ 






Posted by yagom

댓글을 달아 주세요

  1. 스테디셀러 2012.09.19 16:12  댓글주소  수정/삭제  댓글쓰기

    잘 보고있습니다 :) 그런데 소숫점 처리는 어떻게 해야 할까요?

  2. 컴맹 2012.09.24 18:53  댓글주소  수정/삭제  댓글쓰기

    와~ 정말 잘 됩니다.^^
    정수와 소숫점자리 처리 모두 잘되구, 사칙연산 이상없이 계산 잘됩니다.ㅎㅎ
    오늘도 정말 많이 배우고 갑니다.~^^
    지금쯤 고생이 많겠네요.ㅠㅠ
    그래도 24일이니까 일주일만 참으세요.ㅎㅎ
    복귀하면 치킨에 맥주라도 한잔?? ㅎㅎ (당연히 제가 살께요.^^)

    • Favicon of https://blog.yagom.net BlogIcon yagom 2012.10.03 21:51 신고  댓글주소  수정/삭제

      므하하
      건강하게 잘 돌아왔습니다~!
      치맥 사주신다면야!
      정중히 흡입하겠습니다 ㅎㅎㅎ
      신나네용~~~~~~~으히히

  3. 마스터 2012.11.19 21:36  댓글주소  수정/삭제  댓글쓰기

    이거 [self setNumberLable:resultValue];
    랑 [self setNumverLavle:currentInputValue];
    에서 오류 나네요

  4. 시우아빠 2012.11.20 22:46  댓글주소  수정/삭제  댓글쓰기

    11월 초 부터해서 51번 강의까지 다 끝났네요~
    메모장은 아무래도 시간이 안되셔서 여기서 마무리 하신거 같아서 아직 부족한게 많지만
    저도 기초 강좌는 여기서 마무리하고 본업인 게임쪽으로 넘어가려고 합니다.
    앞으로하시는 다른 강의도 열심히 보겠지만
    우선은 지금까지 강의를 통해서 도움을 많이 받았기에 인사를 한번 드려야 할거 같아서요^^
    자기 시간 쪼개서 이렇게 공개강좌를 한다는 쉬운일이 아닐텐데 공익을 위해서 이렇게 노력해주셔서
    저같은 사람들은 얼마나 도움이 많이되는지 모릅니다.
    책을 통해서도 배울수 있지만 이렇게 게시판을 통한 강의도 나름대로 특수성이 있고
    특히 Yagom님의 강의 경우에는 쉽게 이해할수 있는 말로 많이 풀어 써 주셔서 이해도 쏙쏙 잘되고 여기까지 쉼없이 달려 올 수 있었던거 같습니다.
    다시 한번 감사의 말씀 드리고 앞으로도 좋은 강의 많이 부탁드리겠습니다.^^

    • Favicon of https://blog.yagom.net BlogIcon yagom 2012.11.21 20:38 신고  댓글주소  수정/삭제

      이렇게 좋은 덧글 남겨주셔서 저도 정말 영광입니다.
      앞으로도 종종 들러서 글도 남겨 주세요^^*
      정말 고맙습니다!

  5. Favicon of https://ahnfilm.tistory.com BlogIcon AhnFilms 2012.11.23 10:31 신고  댓글주소  수정/삭제  댓글쓰기

    메모장 포스팅 기다리겠습니다 그리고 항상 잘 보고 있습니다

  6. 김민국 2013.01.22 23:31  댓글주소  수정/삭제  댓글쓰기

    7번강의까지 보고 마지막엔 뭘하나 볼려고 봤는데
    정말 좋은 강의 포스팅 해주셔서 감사해요^^

    혹시 프로젝트의 기획 설계와 구현
    이런 전체적인 것을
    따라하면서 배울수잇는 강의를 하실생각은없으신가요?^^ㅋㅋㅋ
    무지 힘든강의겠군요..ㅜㅜㅋㅋㅋ

    • Favicon of https://blog.yagom.net BlogIcon yagom 2013.01.23 09:39 신고  댓글주소  수정/삭제

      안녕하세요, 이렇게 덧글 주셔서 정말 고맙습니다 :)

      음... 그것은 프로젝트 성격과 앱 스타일에 따라서 변동이 많은 부분이라 쉽사리 딱 이게 좋은 방법이다 하기에는 무리가 있을 것 같아요^^;

  7. 마스터 2013.01.26 19:24  댓글주소  수정/삭제  댓글쓰기

    야곰님 배터리 용량을 가져오는 매소드 같은건 없나요?

  8. 안녕하세요 2013.03.31 23:09  댓글주소  수정/삭제  댓글쓰기

    항상 이 블로그에서 많은 자료를 얻는거 같아 기쁨니다ㅎㅎㅎ
    하나 물어볼게 있는데, 이전에 띄어논 AlertView를 어떤 변화(타이머 종료, 로딩 종료 등)가 있으면 사라지게 하는 방법도 있나요? 메소드가 있을거 같은데 아무리 찾아도 없네요 ㅜㅜ

    • Favicon of https://blog.yagom.net BlogIcon yagom 2013.04.02 17:13 신고  댓글주소  수정/삭제

      안녕하세요 :)
      어떤 변화가 감지되는 시점에서 alertView를 dismiss 시켜주시면 됩니다.
      :) 추가적으로 더 궁금하신게 있다면 말씀해 주세요

  9. devtest 2013.07.11 13:20  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 야곰님 오늘 또 왔네요ㅎㅎ
    혹시 xcode를 이용해서 콤보박스를 만들 수는 없을까요?
    아무리 생각해도 만들 방법을 모르겟네요ㅜㅜ

    • Favicon of https://blog.yagom.net BlogIcon yagom 2013.07.11 16:12 신고  댓글주소  수정/삭제

      콤보 박스보다는 아무래도 picker view가 많이 사용되지요...^^

      굳이 콤보박스를 구현해야 한다면 오픈 라이브러리들을 사용해 보셔야 할 것 같습니다 ㅎㅎ

      https://www.cocoacontrols.com/search?utf8=%E2%9C%93&q=combo

  10. 하이앟 2013.09.30 23:00  댓글주소  수정/삭제  댓글쓰기

    좋은 강좌 정말 감사합니다~^^
    무지 많은 도움 받고있어요.
    그런데..ㅎㅎ메모장 구현은 언제쯤?*^^*~기다리고 있을게염~><

  11. 키르미느 2013.10.15 02:50  댓글주소  수정/삭제  댓글쓰기

    야곰님 여쭤볼게 있는데
    제가 네비게이션 기반 실습을 해 보려고 한느데
    첫 화면을 SNS같은 일반 로그인창으로 만들어서 로그인을 하면 로그인된 첫 화면으로 갈텐데
    네비게이션 바가 달려 있어서 다시 백 버튼을 누르면 아이디 및 패스워드 (로그인창)창으로 다시 갈텐데
    로그인된 첫화면에 네비게이션 바를 없애는 게 맞을까요? 로그인 시 아예 다른 뷰를 생성하는 게 맞는 건가요?

    혹시 전자가 맞다면 네비게이션 바, 즉 백버튼 사라지게 하는 건 어떻게 하는 건가요?

    • Favicon of https://blog.yagom.net BlogIcon yagom 2013.10.15 11:24 신고  댓글주소  수정/삭제

      안녕하세요 :)

      때에 따라 두 가지 방법 중에 선택해서 사용합니다.

      주로 로그인 화면은 모달로 많이 띄우기도 하지만 네비게이션으로 처리할 수도 있습니다.

      네비게이션 프로퍼티 중에 navigationBarHidden 이라는 프로퍼티 값을 NO로 설정해 주시면 네비게이션바가 보이지 않습니다 :)

  12. 키르미느 2013.10.16 12:25  댓글주소  수정/삭제  댓글쓰기

    그런데 로그인 화면을 모달로 띄우라고 하셨는데 자세히 알 수 없을까요 소스라도 ㅠㅠ

    두 번째 질문!! ios 7에 xib 파일은 main story 보드로 통합 된 듯?? ㅠㅠㅠㅠ

    • Favicon of https://blog.yagom.net BlogIcon yagom 2013.10.16 18:14 신고  댓글주소  수정/삭제

      ^^;; 로그인화면 샘플코드는 검색하셔도 종종 나올 것 같구요, iOS 7에서는 기본적으로 스토리보드가 생성됩니다. 수동으로 xib를 사용할 수도 있구요.

      모달로 띄우는 방법은 UIViewController 클래스의
      - (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion
      메소드를 참고해 보세요~

  13. 으앙 2013.11.06 22:07  댓글주소  수정/삭제  댓글쓰기

    레이블에 숫자표시가 안되네요 ㅠ