TIL_2019_07
01 Jul 2019 | TIL2019.07.05
- UIDatePicker์์ 24์๊ฐ ๋ชจ๋๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์ ๋: Danish๋ชจ๋ !
- ์ ๋ฌดํ ๋๋ UITextField์ done ๋ฒํผ ๋์์ extension์ ๊ตฌํ๋ ๋์์ ์ฌ์ฉํ๋๋ก ๋์ด์๋ค. ํ์ง๋ง ๋ฆฌ๋ธ๋๋ฉ์ ๋ค์ด๊ฐ๋ฉด์ ํ ์คํธํ๋์ done์ด๋ return ๋์์ ์ถ๊ฐ์ ์ธ ์ฝ๋ฐฑ์ ๊ตฌํํด์ผํ๋ ๊ฒฝ์ฐ๊ฐ ์๊ฒจ์ ์ด๋ป๊ฒ ํด๊ฒฐํด์ผํ๋ ๋ง๋งํ๋๋ฐ, ์์ธ๋ก ์ฝ๊ฒ ํด๊ฒฐํ๋ค. xib์์ sentEvent๋ฅผ didEndOnExit์ ์ํ๋ ๋์์ ๊ตฌํํด์ฃผ๋ฉด ๋๋ค!
2019.07.07
- ์ฃผ๋ง์ ํ ์์ฒญ๋ ์ฝ์งโฆIBOutletCollection์ ์ฐ๊ฒฐํ ๋ ํ๋ํ๋์ฉ ํด์ผ์ง ํ๊บผ๋ฒ์ ์ ํํ๊ณ ๋๋๊ทธํ๋ฉด ๋๋๊ทธ ์์์ ์ธ ๋ฒํผ๋ง ์ฝ๋ ์ ์ ์ฐ๊ฒฐ๋จโฆ.ใ 0ใ ์ด๋ด์๊ฐ. ๋ณดํต IBOutletCollection์ ์ ์์จ์ ๋ชฐ๋๋๋ฐ, ๋ฉํฐ ์ ํํ๊ณ ํ๊บผ๋ฒ์ ๋๋๊ทธํ๋ฉด ํ ์์ธ๋ ๋ณ์์ ๋ค ์ฐ๊ฒฐ๋๋์ค ์์๋ค. (ํ์ง๋ง ์๋์๋ค.) ์๋ฌด๋ฆฌ ์ฝ๋๋ฅผ ๋ฏ์ด๋ณด๊ณ ๋๋ฒ๊น ์ ํด๋ด๋ ๋ก์ง์ ๋ง๋๋ฐ ๋ทฐ์ ๋ฌธ์ ๊ฐ ์์ด์ ์ข์ ์ค๋ฌ์ ๋๋ฐ, ๊ฐ๋ ์ด๋ ๊ฒ ํด๊ฒฐํ๊ณ ํ๋น ์ง๋ ๊ฒฝ์ฐ๊ฐ ์๋ค ใ _ใ !
2019.07.10
- forEach๋ฅผ ๋๋ค๊ฐ ์กฐ๊ฑด์ด ๋ง์ element๋ฅผ ์ฐพ์์ ์์
์ ํ๊ณ ๋ฐ๋ก break๋ return์ผ๋ก ๋ฐ๋ณต๋ฌธ์ ๋๋ด๊ณ ์ถ๋ค๋ฉด forEach๊ฐ ์๋ filter๋ firstํจ์๋ฅผ ์ฐ์!
- ๊ทผ๋ฐ element์ค์์ ๋จ ํ๊ฐ๋ง ์ฐพ์์ ์์ ํด์ผํ๋ ์ํฉ์ด๋ผ๋ฉด first๊ฐ ๋ ์ ํฉ. (์ค์ํํธ ๊ณ ์ฑ ํจ์โฆ๋ ์ข๋น..)
if let category = self.selectedCategory { if let categoryButton = self.categoryButtons.first(where: { $0.titleLabel?.text == category }) { categoryButton.doSomething() } }
2019.07.20
- ํด๋ก์ ๋ธ๋ญ ๋ด๋ถ์์ lldb์์ self๋ฅผ ์ ๊ทผ ๋ชปํ๋?
- forEach ๋ฌธ ์์ ๋ธ๋ ์ดํฌ ํฌ์ธํธ๊ฐ ๊ฑธ๋ ค์์๋ ๊ฐ์ ๋ด์ผํด์ ์ฐ์ด๋ดค๋๋ฐ, ์๋ ๊ฒ ๋์๋ค.
์ฐพ์๋ด์ผ์ง
```
(lldb) po objUser?.strRegion
error:
:3:1: error: use of unresolved identifier 'objUser'; did you mean 'objc_super'? objUser?.strRegion ^~~~~~~ objc_super
- forEach ๋ฌธ ์์ ๋ธ๋ ์ดํฌ ํฌ์ธํธ๊ฐ ๊ฑธ๋ ค์์๋ ๊ฐ์ ๋ด์ผํด์ ์ฐ์ด๋ดค๋๋ฐ, ์๋ ๊ฒ ๋์๋ค.
์ฐพ์๋ด์ผ์ง
```
(lldb) po objUser?.strRegion
error:
(lldb) po objUser
error:
(lldb) po self.objUser?.strRegion
error:
### 2019.07.21
- ๋์ ๋งํธ ์ฑ์ ์์... ์์น๊ฒ์...๊ด๋ จ ์์
ํ๊ธฐ!
- ์ ์ ์์น ๊ฐ์ฒด์ isValid ๊ตฌํํ๊ธฐ
- ์ ์ ์์น ๊ธฐ๋ฐ์ผ๋ก ์ฃผ๋ณ ๋งํธ ํ์ํ๋ fetch() ํจ์ ์ ๊ฒ
- ์ ์ ์ขํ๊ฐ ์กํ๋ฉด ๋ฐ๋ก ํ๋กํผํฐ ์ธํฐ์์ fetch()๋ฅผ ์ฝํ๊ฒ ๋์ด์๋๋ฐ, ์ ์ ์ ์์น๊ฐ 0,0์ด๋ ๋ง๋ ์๋๋ ๋์๊ฐ ์กํ์ ๋ค์ด๋ฒ ์ํด๋ผ์ฐ๋์ ๋ฌธ์๋ฅผ ๋จ๊ธฐ๊ธฐ๋ ํ๊ณ ๋ค์ด๋ฒ ํ
ํฌ์ฝ์ํธ์์ ๋ค์ด๋ฒ ์ง๋ SDK๊ฐ๋ฐํ ๊ฐ๋ฐ์์๊ฒ ์ง์ ์ด๋ป๊ฒํ๋ฉด ์ข์๊น ๋ฌผ์ด๋ณด๊ธฐ๋ํ๋..๊ทผ๋ฐ ์ฐ์ฐํ ์ธํฐ๋ท ๋ต๋ณ ์ฃผ์ ๋ถ์ด๋ ๋ค์ด๋ฒํ
ํฌ์ฝ์ํธ์์ ๋ฐํํ์ ๋ถ์ด๋ ๊ฐ์ ๋ถ์ด์
์ ๋ํ๋ฅผ ๋๋ ๋ณด๋, ์ค๋ด์์ ์ ์ ์์น๋ฅผ ์ก์๋ ๋ถ์ ํํ๊ฒ ์กํ ์ ์์ด์ ๋์๊ฐ ํ์๋๋ ๊ฒ์ผ ์ ์๊ณ ๋ค์ด๋ฒ์ง๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณตํ๋ inValid์์ฑ์ (๋ค์ด๋ฒ์ง๋๊ฐ ์ ์ธ๊ณ ์ง๋ ์๋น์ค๋ฅผ ๋ชฉํ๋ก ํ๊ณ ์๊ธฐ๋๋ฌธ์..) 0 ์ดํ์ ์๋ง ์ก๋๋ค๊ณ ํ์
์ 0,0์ด๋ ๋์๊ฐ ๊ฑธ๋ฌ์ง์ง์๋๋ค๊ณ ํ์
จ์. ๊ฒฐ๊ตญ CoreLocation์ ์ฌ์ฉํด์ ์์น๋ฅผ ์ก๊ฑฐ๋ ์ ํํ ์์น๋ฅผ ํ๋ณํ๋ ๋ก์ง์ ์ปค์คํ
ํ๋๊ฒ์ผ๋ก ๊ฒฐ๋ก ์ด ๋ฌ๋๋ฐ, ์ฌ์ค ๋์ ๋ฌธ์ ์ํฉ์ ์ ์ ์์น๊ฐ ๋ถ์ ํํ๊ฒ ์กํ๋๊ฒ ์๋๊ณ ์ ์ ์์น๊ฐ ์กํ๊ธฐ ์ ์ 2์ฐจ๋ก์ ๋ ๋์๊ฐ ์ฐํ๋๊ฒ ๋ฌธ์ ๋ผ์, ๊ตญ๋ด ์/๊ฒฝ๋๊ฐ ์ ํจํ ๊ฐ์ผ๋ก Range๋ฅผ ์ก์์ฃผ๋ฉด ํด๊ฒฐ๋ ๊ฒ ๊ฐ๋ค!
- tick mark UISlider ๋ง๋ค๊ธฐ
-
- awesome Swift
```swift
func compareDifference(compare: NMGLatLng ,value: Double) -> Bool {
return self.lat - compare.lat > 0.0005 || self.lng - compare.lng > 0.0005
// ์์ฒ๋ผ ๋จ ํ ์ค๋ก ํด๊ฒฐ
// if self.lat - compare.lat > 0.0005 || self.lng - compare.lng > 0.0005 {
// return true
// } else {
// return false
// }
}
2019.07.22
-
์คํ๋ทฐ๋ฅผ ํ์ ํ ์ด๋ธ๋ทฐ ์ : ์คํ ๋ ์ด์์์ด ๋น๋ ๋จ๊ณ๊น์ง๋ ๋ฉ์ฉกํ๊ณ ์ฌ์ง์ด ํ๋ฉด์ ์ฌ๋ผ์์๋๋ ๋ฌธ์ ์์ด ๋ถ๋๋ฐ ์ฝ์์ breaking ์คํ ๋ ์ด์์ ๊ด๋ จ ๊ฒฝ๊ณ ๋ฉ์์ง๊ฐ ์ด๋ง๋ฌด์ํ๊ฒ๋ ์โฆ ์๋ฌ ๋ฉ์์ง๋ฅผ ์ ๋ฏ์ด๋ณด๋ ์ ์์ ์คํ๋ทฐ์ subView๋ก ๋ค์ด๊ฐ๋ ์นด๋๋ทฐ ํ๋ํ๋์ ์คํ ๋ ์ด์์์ด ๋ถ๋ค ์ดํน ๋ผ์ ๋๋ ๋ฉ์์ง๋ค์ด์๋ค. ๊ทธ ์๋ฌ๋ฅผ ํด๊ฒฐํ๋ ๋๋ฆ์ ๋ ธํ์ฐ๋ ๊ฑฐ๊ธฐ์ ์ด๊ฑฐ๊นจ์ง๊ณ ์ ๊ฑฐ๊นจ์ง๊ณ ์์ฒญ ๊ธธ๊ฒ ์จ๋์ ๊ธ ๋ฐ์ ์ด๋ฌ์ด๋ฌํ ๊ฒ๋ค์ด ๋ญ๋๋ฌธ์ ๊นจ์ก๋๋ฉด ์ด๊ฑฐ์ผ: ํ๊ณ ๋์ค๋ ๋ ์ค์ง๋ฆฌ ๋ฉ์์ง๊ฐ ์๋๋ฐ ๊ฑฐ๊ธฐ์ ์ด๋ค ์คํ ๋ ์ด์์ ์ค์ ๋๋ฌธ์ ์ด๋ฐ ๋ถ๋ค ์ดํน์ด ๋๋์ง ์์ธ์ด ๋๋ ์์๋ฅผ ์ฐพ์์ค๋ค. ๋ณด๋๊น ๊ฐ ์นด๋๋ทฐ์ height๋ฅผ ์ก์์ฃผ๋ ์คํ ๋ ์ด์์๋๋ฌธ์ ์๋ฌ๊ฐ ๋ฌ๋ค๊ณ ์์ธ์ ํ์ ํ๋ค.: ๋์ด๋ฅผ ์ก์์ฃผ์ง ์์ผ๋ฉด ์๋ฌ๊ฐ ๋ ๊ฑฐ๊ฐ์๋๋ฐ bottom๊น์ง ์ก์ ์ํ์ฌ์ ์๋ฌ๊ฐ ์๋จ. ์คํ๋ทฐ๋ ๋ด๋ถ์์๋ถํฐ ์คํ ๋ ์ด์์์ ์ก์์ ์ํผ๋ทฐ์ ํฌ๊ธฐ๋ฅผ ์ก๋๋ค๊ณ ์๊ณ ์์๋๋ฐ, ์ด ๋๋ฌธ์ ๋์ด๋ฅผ ์ก์์ผ ํ๋ ์ค ์์๋๋ฐ ์๋์๋ค!
- Custom UISlider Delegate๋ง๋ค๊ธฐ: ๋ญ๊ฐ ๋น์ฐํ ์์ ์ค ์์๋ UISliderDelegate๊ฐ ์๋ค..(๋นํฉ)
- ๋ ๊ธฐ๋ณธ ์ฌ๋ผ์ด๋๋ฅผ ์คํ ๋ฆฌ๋ณด๋์ addํ๊ณ IBAction์ ์ฐ๊ฒฐํด์ ์ธ ์ ์๋๋ฐใ ใ ์ปค์คํ ํ ๋ค๋ฅธ UISlider๊ฐ ์๋๋ฐ..ใ ใ
- ๋นํฉํ์ง ์๊ณ ์ปค์คํ ๋ธ๋ฆฌ๊ฒ์ดํธ๊น์ง ๋ง๋ค์ด๋ณด๊ธฐ๋ก ํ๋ค!
UIView.animate
ํจ์๋ก ์คํ ๋ ์ด์์ constraint๊ฐ์ ๋ฐ๊ฟ์ฃผ๊ณ ์ถ์๋ฐ ์์ง์์ด ์๋๋ผ ๋ฟ ํ๊ณ ๋ฐ๋๋๊ฑฐ๊ฐ์์ ์ฐพ์๋ณด๋๊น ์ด๋ฐ ์ด์ ๊ฐโฆ.- https://stackoverflow.com/a/25650669/10265697
Comments