5월, 2019의 게시물 표시

[iOS] AVAudioPlayer Sample (효과음, 배경음 넣기)

이미지
업무를 진행하다 보면 효과음, 배경음 등을 사용해야하는 경우가 있다. 필자가 진행중인 프로젝트들은 보통 효과음, 배경음 등을 거의 사용하지 않는 업무가 많다 보니 간혹 써야할 때 다시 찾아봐야하는 경우가 있어서 이번 기회에 Sample Project 만들어서 정리 하도록 한다. [ Git 샘플 다운로드 ] 샘플 앱의 구성은 간단하게 play, pause, stop 3가지의 기능을 제공하는 형식으로 구성하였으며, Asset, filePath 두가지 방식의 리소스 불러오는 형식을 제공하도록 샘플작업하였습니다. #. 주의사항 AVAudioPlayer 변수는 지역변수로 설정하는 경우 함수 실행 후 ARC에 의해 초기화 되어 실행이 되지 않는 것 처럼 행동 하니 Sample 작업 하실때도 전역변수로 진행하시길 바랍니다. 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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 // //  ViewController.swift //  AVAudioPlayerSample // //  Created by JW_Macbook on 29/05/2019. //  Copyright © 2019 JW_Macbook. All rights reserved. // import  UIKit // 1. Imp

에어팟2 무선충전모델 구매기

이미지
늦은 에어팟2 구매기! 와이프가 선물로 사준 에어팟2 아기태어나기전 마지막 선물이라고 (ㅠㅠ 감동) [사용기] 대략 구매후 2주가량 사용하고 있는데, 애플제품이 많아서 연동에 편리성이 애플제품만 사용한다면 에어팟 보다 편한제품은 없는 것 같다. 요즘 에어팟 사용할 때 무선충전기(에어팟 케이스) > iPhone X 연결(노래) >  iPad Pro 3세대 (Facebook 볼 때) > MacBook Pro (유튜브 일하기 싫을때) 이렇게 물흐르듯 연결이 편해서 좋은것 같다! (이렇게 보면 걍 일안하는듯 ㅋㅋ) 영롱한 에어팟2 언제나 애플의 포장지 뜯는 맛은 신선하다. 무선충전모델 이라 가운데 충전알림표시가 있다. 아래 라이트닝 케이블도 동봉! 이번에 USB C 케이블이 아닌게 너무 아쉽.. 무선충전기에 바로 올려보니 충전시작 !! 일할 때만 에어팟을 써서 충전이 떨어질 일이 없다. 에어팟을 최초로 연결하게되면,  연결된 사용자의 계정명의 AirPods 으로 이름이 셋팅된다. (예전에 AirPods 회사 과장님이 구매했는데,  내꺼 먼저 연결해서 jiwook의 AirPods의 기억이있음) 드디어 배터리 부분의 4개를 채웠다. (행복) 추가적으로 에어팟 귀에 장착한 상태로 더블탭을 하면 기능을 설정할 수 있는데, 설정 > 블루투스 탭 > 에어팟 info 를 클릭하면 왼쪽, 오른쪽에 따라 Siri, 재생/일시 정지, 다음트랙, 이전트랙, 끔 의 기능 이 있다. 필자는 왼쪽(이전트랙), 오른쪽(다음트랙) 으로 설정 하였다. (잘 안쓴다.) 추가적으로  에어팟 사용자들이 한번쯤 해보는 일명 보청기 기능 설정 > 제어센터 > 사용자 화 > 듣기 지원 을  추가해주시면

[iOS] Image관리 폴더에서 ImageAsset 변경하기

이미지
Image Asset 기존에 프로젝트에서 Image Asset 의 경우 icon 및 LaunchImage 만 사용하던 시절에 사용하고 있었는데 , 일반적인 이미지 파일의 경우 Support 폴더에 Image 폴더를 추가해 거기에서만 추가하곤하였다 . 어느순간 이미지의 갯수가 4,300 장 이  넘어가면서   이름 대비 찾는것도 힘들고 , 사용하는지 안하는지도 이제는  판별하기 어려운 수준까지 되었다. ( 인간적으로 프로젝트 1 개에   이미지 4,300 장이라는 숫자가 말이안된다고 생각함 .) 처음에 이미지를 추가할 땐 괜찮지만 , 점점 추가될수록 어디에 어떤 이미지가 있는지 내가 생각한 이미지가 맞는지를 찾기가 점점 힘들어진다 .   이미지 1 : 기존에 사용되고 있는 이미지폴더 리스트 ImageAsset의 경우 일단 폴더 구조 처럼 만들수 있다. 앞서 폴더를 너무 여러개 만든것에 후회하고 있어서 총 3가지의 ImageAsset 으로 관리 하려고한다. 1] MainBottomIcon : 하단 메뉴 아이콘 집합 ( 테마별 존재 ) 2] MainMenuIcon : 메인 메뉴 아이콘 집합 ( 테마별 존재 ) 3] CommonImage : 그 외 내부 폴더존재로 공통으로 사용되는 이미지들 . 현 프로젝트에서 이미지 추가때 가장 힘들었던 점인데 , 메인메뉴 와 하단서브메뉴 두가지의 중요한 메뉴들이 존재하는데,  테마별 아이콘들이 따로 있어서 추후에 테마 혹은 메뉴가 추가될때마다 점점 힘들어 지는 상황이 발생하여서  조금이라도 추가와 관리를 편하게 하고자 정리를   시작하였다 . [ 메인 테마의 갯수만 208 가지 ] 하단 메뉴만 17 개 이며 4 가지 테마  존재  

[Swift 공부] Collection Type (Array, Dictionary, Set)

Array 배열은 같은 타입의 데이터를 일렬로 나열한 후 순서대로 저장하는 형태의 컬렉션 타입이다. # 각기 다른위치에 같은값이 들어갈 수 있음. 실무에서 많이 쓰는 컬렉션 타입이며, Objectvie C 때부터 기본 Array 가 아닌 MutailbleArray 로 많이 쓰고 있다. Swift의 Array에서는 Array 와 Mutable의 구분이 없어졌으며, let 과 var 형식에 의해 수정가능, 수정불가능으로 구분된다. 처음에 Objective C 에서 MutableArray를 위주로 사용하였을때, 자꾸 어색한 감이 없지 않아있었으나 실제로 사용해보면 생각보다 편하게 사용할 수 있다. // 배열 // 1. 배열의 생성 var  names1:Array < String >   =  [ "jiwook" ,  "sujung" ,  "ari" ] // 1-1. 위와 동일한 표현방법 [String] == Array<String> 같은 표현입니다. var  names2:[ String ]  =  [ "jiwook" ,  "sujung" ,  "ari" ] var  emptyArray:[Any]  =  [Any]()  // Any 형의 빈배열 생성가능 // 배열 간략사용기 print (names1[ 0 ])  // jiwook names1.removeFirst()  // 첫번재 데이터 삭제가능 names1.removeLast()  // 마지막 데이터 삭제가능 names1.insert( "New Jiwook" , at:  0 )  // 원하는 위치에 데이터 추가 가능 names1.append( "New Ari" )  // Array의 마지막에 데이터 추가가능 names1.removeAll()  // Array 

[요리] 에어프라이어 도전지! [헤시브라운 편]

이미지
에어프라이어 요리도전하기! 이번에는 우연치 않게 마트에서 장을 보다가 구한 해시브라운을 준비해보았다. 전체적인 조리과정 1. 마트에서 해시브라운을 구한다. 2. 180도에 10분정도 돌려준다. 3. 맥주와 캐찹과 같이 맛있게 먹는다. 마트에 식자재코너가 있었는데, 와이프가 먹고싶어서 구매한 "해시브라운" 사이즈도 딱 알맞게 2개! 들어가내요 에어프라이어에 180도에서 10분 돌려줍니다. 크~ 뜨끈뜨끈 와이프가 먹고싶어서 샀지만, 오늘의 술안주로 제격이내요 ^^ 오늘은 요리라기도 너무 없어서 에어프라이어로 쉽게 먹을수 있는 "냉동식품" 으로 봐주시면 좋겠내요. #에어프라이어, #해시브라운, #술안주