IOS
-
์ ๊ทผ์ฑ ๋ชจ๋๊ฐ ์ผ์ก์ ๋๋ง ํญ ์ด๋ฒคํธ ๋ฑ์ ์ถ๊ฐ ๋์์ ๋ฃ๊ณ ์ถ์ ๊ฒฝ์ฐ๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2022. 6. 20. 09:18
accessibilityActivate์ ์ถ๊ฐ ๋์์ ๋ฃ์ ์, ๊ธฐ์กด์ tap ์ด๋ฒคํธ๋ฅผ ๊ตฌํํด ๋ ์ํ๋ผ๋ฉด ๊ธฐ์กด ์ด๋ฒคํธ๋ ์ ๋๋ก ๋์ํ์ง ์์ ์ ์๋ค. (๊ฒฝํ์ ์ผ๋ก ์๊ฒ๋จ. ์ ๊ทผ์ฑ ๋ชจ๋๋ฅผ ์ผ ์ํ์์๋ ์ถ๊ฐ ๋์์ ๋ฃ์๋ค๊ฐ ์ถ๊ฐ ๋์๋ ์๋๊ณ ๊ธฐ์กด ํญ๋ ๊ฐ๋์ฉ๋ง ๋์ํ๋ ์ด์ ํ์ ๋ฐ์ํ์. ) ์ ๊ทผ์ฑ ๋ชจ๋๋ฅผ ์ผ ์ํ์์ ์๋ก์ด ๋์์ ์ถ๊ฐํ๊ณ ์ถ๋ค๋ฉด, ์ฐจ๋ผ๋ฆฌ accessibilityActivate๋ ํญ์ YES๋ฅผ ๋ฆฌํดํ๊ฒ ๋๊ณ , ํญ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ถ๋ถ์์ UIAccessibilityIsVoiceOverRunning() ์ ์กฐ๊ฑด๋ฌธ์ ์ถ๊ฐํด์ ์ฐธ์ผ๊ฒฝ์ฐ์๋ง ํด๋น ๋์์ ํ๋๋ก ํ์. ๊ด๋ จ ๋ฌธ์ https://developer.apple.com/documentation/uikit/1615187-uiacc..
-
UINavigationBar - setTranslucent (๋ค๋น ๋ฐ๋ ์ฐ๋ฉด์ statusBar ์์ญ ๋ถํฐ ๋ทฐ๋ฅผ ๋ฐฐ์นํ ์ ์๊ฒ ํ๊ธฐ)๊ณต๋ถ/iOS 2022. 2. 10. 09:58
๋๋ก ๋ค๋น ๋ฐ์ ๋ฐํ์์ด ์ผ๋ฐ์ ์ธ ์์ด ์๋๊ณ ํฌ๋ช ํ๊ฒ, ์คํ ์ดํฐ์ค ๋ฐ์ ์์ญ๋ถํฐ ๋ทฐ์ ๋ฐํ์์ด ๊ทธ๋๋ก ๋ณด์ฌ์ผํ๋ ๋์์ธ์ด ๋ค์ด์ฌ ๋๊ฐ ์์ฃ ! ํนํ ๋ทฐ์ ๊ทธ๋ผ๋ฐ์ด์ ์ด ๋ค์ด๊ฐ ์๋ ๊ฒฝ์ฐ๋ ๋ค๋น ๋ฐ์ ๋ณ๋๋ก ๊ทธ๋ผ๋ฐ์ด์ ์ ๋ฃ๊ธฐ์๋ ์ ๋งคํด์ง๋๋ฐ์. ๋ค๋น ๋ฐ๋ ์ฐ๋ฉด์ ์คํ ์ดํฐ์ค ๋ฐ์ ์์ญ๋ถํฐ ๋ทฐ๋ฅผ ๋ฐฐ์นํ๋ ค๋ฉด UINavigationBar์ setTranslucent๋ฅผ NO๋ก ์ค์ ํด์ฃผ๋ฉด ๋ฉ๋๋ค. (๊ธฐ๋ณธ๊ฐ์ YES) [self.navigationController.navigationBar setTranslucent:NO]; YES/true NO/false ๋ทฐ์ ๋ฐฐ์น๊ฐ ์คํ ์ดํฐ์ค ๋ฐ์ ์์ ์์น๋ถํฐ ์์ ๋ทฐ์ ๋ฐฐ์น๊ฐ ๋ค๋น๊ฒ์ด์ ๋ฐ ํ๋จ์์ ์์ iOS 7๋ถํฐ YES๊ฐ ๋ํดํธ๋ผ๊ณ ํ๋ค์! (์ด์ 13๋ ๋ฎ์ ๋ฒ์ ์ด๋ผ ์๋ ..
-
์์ดํฐ ๋น ํด์๋(resolution) , ํฌ์ธํธ ๊ธฐ๋ฐ ํ๋ฉด ํฌ๊ธฐ ๋ฆฌ์คํธ๊ณต๋ถ/iOS 2022. 2. 9. 16:21
์๋ ํ์ธ์! ๋ ๋ชฌํด ์ ๋๋ค ๐ ๊ฐ๋ ๋์์ธ์ ์๋ฏผํ ์ ๋ฐ์ ์๋ ๋ฉ์ธ ์๋น์ค์์ ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ค์ผ ํ ๋, ์๋ก ๋ค๋ฅธ ํด์๋์ ๊ธฐ๊ธฐ์์ ํ ์คํธ ํ๋ค๋ณด๋ฉด ์ด๋ฏธ์ง๊ฐ ์ํ๋ ๋๋ก ๋์ง ์์ฃ ... (๋์ด๋๋ ์ฝ๊ฐ? ์กฐ๊ธ? ์ด์ํ.. ๋๋ก QA๊ฐ ์ค๊ธฐ๋ ํ๊ตฌ...) ์ด๋ฏธ ContentMode๋ฅผ AspectFill ์ด๋ Fit์ผ๋ก ์ค ์ํ์ฌ๋ ๋ง์ฐฌ๊ฐ์ง์ธ ๊ฒฝ์ฐ๋ ๋ง๊ณ ์. ๊ทธ๋ด ๋๋ ์ด๋ฏธ์ง๋ฅผ ํด์๋ ๋ณ๋ก ์ค๋นํด ๋ฌ๋ผ๊ณ ํ ์ ์์ผ๋ฉด ์ข๋๋ผ๊ณ ์! ์ด๋ฏธ ์ด๋ฐ ๊ฒฝ์ฐ๋ฅผ ๊ฒช์ผ์ ๋ถ๊ป์๋ ๋จผ์ ๋ฌธ์ํด์ฃผ์๊ณ ์ค๋นํด์ฃผ์๊ธฐ๋ ํ์ ์! ์ ๋ ์ ๋ชฐ๋์๋๋ฐ ์ฐธ ๊ฐ์ฌํ๋๋ผ๊ณ ์ :) ์ ๊ฐ ์๋ ๊ณณ์์๋ ๋๋น ๊ธฐ์ค์ผ๋ก 375 pt, 414 pt ์ด๋ ๊ฒ 2๋ฒ๋ก ์ค๋นํด์ฃผ์๋ ํธ์ด์์. ํน์ ๋ค๋ฅธ ์ผ์ด์ค๋ ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์! ๊ทธ๋ด ๋ ํ๋ฉด ํฌ๊ธฐ..
-
[iOS] NS_UNAVAILABLE๋ก init๋ฅผ private method๋ก ๊ฐ์ถ๊ธฐ๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2020. 3. 4. 15:02
//์ฌ์ฉํ์ง ๋ชปํ๊ฒ ๊ฐ์ถ๊ณ ์ถ์ ๋ฉ์๋ ๋ช ๋ค NS_UNAVAILABLE - (instancetype)init NS_UNAVAILABLE; Objective C์์๋ NSObject๋ฅผ ๋ฐ๋์ ์์๋ฐ์ผ๋ฏ๋ก, init๊ฐ public ์ผ๋ก ์คํ๋๊ฒ ๋ฉ๋๋ค. ํ์ง๋ง ๋๋๋ก init๋ฅผ private ํ๊ฒ ๋ฐ๊พธ๊ณ ์ถ์ ๋๊ฐ ์๋๋ฐ, ๊ทธ ๋ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. + ์๋์์ฑ ๋ฆฌ์คํธ์๋ NS_UNAVAILABLE๊ฐ ์ถ๊ฐ๋ ๋ฉ์๋๋ ๋ํ๋์ง ์์ต๋๋ค.
-
[iOS] ํ์ฌ ์ค๋ ๋๊ฐ main thread ์ธ์ง ์์๋ด๊ธฐ๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2020. 2. 28. 23:30
OperationQueue.current == OperationQueue.main OperationQueue ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ฌ ์ค๋ ๋๋ฅผ ๊ฐ์ ธ์ค๊ณ , ํ์ฌ ์ค๋ ๋๊ฐ Main Thread์ธ์ง ์๋์ง ์์๋ผ ์ ์๋ค. Background Thread์ main thread๊ฐ ๊ฐ์ด ์ฌ์ฉํ๋ ์ฝ๋๊ฐ ์๋ ๊ฒฝ์ฐ, ์ด ์ฝ๋๋ฅผ ์ฌ์ฉํด์ ์กฐ๊ฑด๋ฌธ์ ๊ฑธ์ด์ UI ์กฐ์ ์ฝ๋๋ฅผ main Thread๊ฐ ์๋ ๊ฒฝ์ฐ ํผํด๊ฐ๊ฒ ํ ์ ์๋ค...
-
[iOS]BackgroundTasks ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋, task ์คํ, ์ค๋จ ํ ์คํธํ๊ธฐ.๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2020. 2. 24. 10:45
์๋ ํ์ธ์, ๋ ๋ชฌํด์ ๋๋ค. ์ค๋๋ ์ ๋ BackgroundTasks ํ๋ ์์ํฌ๋ฅผ ์จ๋ณด๋ ค๊ณ ๋ฌดํ ์ฝ์ง ์ค์ด์์..ใ ใ ๊ทธ ์ค task๋ฅผ ์คํ/์ค๋จํ๋ ๋ฒ์ ์ ๋ฆฌํด๋ดค์ด์. 1. ์คํ ํ ์คํธ ํด๋ณด๊ธฐ 1. BGTaskScheduler์๊ฒ task๋ฅผ submitํ๋ ์ฝ๋ ์คํ. 2. ๊ทธ ๋ค์ ์์ ์ break point ์ก๊ธฐ 3. break ํฌ์ธํธ๊ฐ ๊ฑธ๋ฆฌ๋ฉด ์๋ ๋ช ๋ น์ด ์ ๋ ฅํ๊ธฐ. 4. ์ฑ์ ๋ค์ ๊ตฌ๋ ์ํค๊ธฐ. (๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋ช ๋ น์ด๋ฅผ ์คํํ ๊ฒฝ์ฐ, ์ฑ์ ๋ค์ foreground๋ก ์ฌ๋ฆฌ์ ์ผ ํฉ๋๋ค! ์์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค์... ์ ๋ง ๊ทธ๋ฐ ๊ฑธ๊น์.) ๋ฐ๋์ ์ค ๊ธฐ๊ธฐ์์ ์คํ์์ผ์ผ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ฒ๊ทธ ์ฉ๋๋ก๋ง ์ฌ์ฉํด๋ฌ๋ผ๊ณ ๊ฒฝ๊ณ ๊ฐ ์๋ค์ e -l objc -- (void)[[BGTaskScheduler sharedSch..
-
[iOS] BackgroundTasks Framework ๊ฐ๋จ ์ ๋ฆฌ๊ณต๋ถ/iOS 2020. 2. 24. 07:55
๋ชฉ์ฐจ BackgroundTasks Framework? ๋ฌด์์ ์ง์ํ๋๊ฐ ์ฃผ์ ์ฌํญ ๊ฐ๋จํ๊ฒ ์จ๋ณด์! ํ ์คํธ ํด๋ณด๊ธฐ ์ฐธ๊ณ ๊ธ๊ณผ ๋ ๋ณด๋ฉด ์ข์ ๊ฒ๋ค 1. BackgroundTasks Framework? https://developer.apple.com/documentation/backgroundtasks ์ฑ์ด ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์์ ์ ์ํํ ์ ์๊ฒ ์์คํ ์๊ฒ ์์ฒญํ๋ ๊ฑธ ๋์์ฃผ๋ ํ๋ ์์ํฌ์์. ๊ฐ๋จํ ์๋ฒ ํธ์ถ > ๋ฆฌํ๋ ์ฌ ์์ ๋ถํฐ, ์๋์ง๋ฅผ ๋ง์ด ์ฌ์ฉํ๊ณ ๋คํธ์ํฌ ์ฐ๊ฒฐ์ ์๊ตฌํ๋ ์์ ๋ ์์ฒญํ ์ ์๋ค๊ณ ํด์. iOS 13๋ถํฐ ์ง์. 13 ์ดํ์ ๋ฒ์ ์ ์ด ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํด์ผํ๋ค๊ณ ํด์. setMinimumFetchInterval๋ deprecated ๋์ด๋ฒ๋ ธ๋ค์ ๐ฅบ 2. ๋ฌด์์ ์ง์ํ๋๊ฐ ์ฑ์ด ๋ฐฑ๊ทธ๋ผ์ด..
-
[iOS] Firebase ์ฌ์ฉ ์, Remote Notification์ด ์ ์์ ์ผ๋ก ๋ค์ด์์ ๋ ํธ์ถ๋๋ ์ง์ ๋ค๊ณผ ์๋ฌธ์ ๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2020. 2. 20. 21:00
aps๋ฅผ ์ฌ์ฉํ์ง ์๊ณ , ์ง์ ๋ ธํฐํผ์ผ์ด์ ์ ๋์ธ์ง ๋ง์ง ์ฑ์์ ํ ๋ฒ ๋ ์ฒดํฌํด์ผ ํ ์ผ ์ด ์๊ฒผ๋ค. (๋๋ฆ์ silent push. ์ฌ์ค aps์์ alert ์์ฑ์ ์ ์ธํด ๋ ธํฐํผ์ผ์ด์ ์ ๋จ์ง ๋ชปํ๊ฒ ํ๋ ๋ฐฉ๋ฒ๋ ์๊ธด ํ๋ค) ๋๋ฌธ์, Firebase๋ฅผ ์ฌ์ฉํ ๋, ํธ์๊ฐ ๋ค์ด์ค๋ ์์ ๊ณผ, ๊ทธ ์์ ์์ ํธ์๋ก ๋ค์ด์จ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ๊ธฐ ์ํด ํธ์ถ๋๋ ์ง์ ์ ํ์ธํ๋ค. FireBase SDK๋ฅผ ์ฌ์ฉํด์ ํธ์๋ฅผ ์ฒ๋ฆฌํ๋ฉด, ์ด 3 ๊ฐ์ง ๊ฒฝ๋ก๋ก ํธ์๊ฐ ๋ค์ด์จ๋ค. 1. Firebase ์ messageDelegate ์ด์ํ๊ฒ ์๋ ์์ฃผ ํธ์ถ์ด ์๋๋ค... :( ์ด๋ค ๊ฒฝ์ฐ์ ํธ์ถ๋๋์ง ๋ค์ ์์๋ด์ผ๊ฒ ๋ค. ์ค ๊ธฐ๊ธฐ์์๋ ์ ๋๊ณ ์๋ฎฌ๋ ์ดํฐ์์๋ง ํธ์ถ๋์๋ค. func messaging(_ messaging: Messa..