๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90
๋ฐ˜์‘ํ˜•
๋ฐฑ์ค€ํ”„๋กœ๊ทธ๋ž˜๋ฐ 2๋‹จ๊ณ„ 1,2,3,4,5,6๋ฒˆ Swift 1. ๋‘ ์ •์ˆ˜ A์™€ B๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, A์™€ B๋ฅผ ๋น„๊ตํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ํ•ต์‹ฌ if๋ฌธ ์“ธ ์ค„์•„๋‹ˆ? import Foundation let line = readLine() let linearr = line!.components(separatedBy:" ") let A = Int(linearr[0])! let B = Int(linearr[1])! if AB{ print(">") }else{ print("==") } 2.์‹œํ—˜ ์ ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 90 ~ 100์ ์€ A, 80 ~ 89์ ์€ B, 70 ~ 79์ ์€ C, 60 ~ 69์ ์€ D, ๋‚˜๋จธ์ง€ ์ ์ˆ˜๋Š” F๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ํ•ต์‹ฌ 1.else if ์“ธ ์ค„์•„๋‹ˆ? 2.&&์“ธ ์ค„ ์•„๋‹ˆ? import Foundation let line = read.. 2020. 1. 16.
[iOS] link url๋กœ ์ด๋™ํ•˜๊ธฐ let url = NSURL(string:"์›ํ•˜๋Š” ์ฃผ์†Œ")! as URL UIApplication.shared.open(url, options: [:], completionHandler: nil) 2020. 1. 15.
๋ฐฑ์ค€์•Œ๊ณ ๋ฆฌ์ฆ˜ 1๋‹จ๊ณ„ 6,7,8,9,10,11 Swift ํ•˜...ํ‹ฐ์Šคํ† ๋ฆฌ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๋ ‰๊ฑธ๋ ค์„œ ๋‹ค์‹œ ์“ด๋‹ค.... ๊ธ์ •์ ์œผ๋กœ ๊ฐ€๋ณด์ž.. 6.๋‘ ์ •์ˆ˜ A์™€ B๋ฅผ ์ž…๋ ฅ๋ฐ›์€ ๋‹ค์Œ, A-B๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ํ•ต์‹ฌ ์œ„ ๋ฌธ์ œ์—์„œ ์–ธ๊ธ‰ readLineํ•  ๋•Œ L๋Œ€๋ฌธ์ž์ž„ A์™€ B๋ฅผ ๊ตณ์ด ๋”ฐ๋กœ ์“ธ ํ•„์š”๊ฐ€ ์—†์Œ ์ฃผ์˜ํ•  ์  Int(linearr[n])์— default ๊ฐ’์„ ์ฃผ๋ ค๋ฉด ์ „์ฒด๋ฅผ ๋ฌถ์–ด์•ผ ํ•จ import Foundation let line = readLine() let linearr = line!.components(separatedBy:" ") let A = Int(linearr[0])! let B = Int(linearr[1])! let AB = (Int(linearr[0]) ?? 0 - (Int(linearr[1]) ?? 0) print(A-B) 7. ๋‘.. 2020. 1. 14.
[iOS/UI] ํฐํŠธ ์ ์šฉํ•˜๊ธฐ(feat.๋„ค๋น„๊ฒŒ์ด์…˜ํƒ€์ดํ‹€) ์›ํ•˜๋Š” ํฐํŠธ๋ฅผ ๋‹ค์šด๋ฐ›๊ณ  Xcode ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€ํ•ด์ค€๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํฐํŠธํŒŒ์ผ์„ ๋ˆ„๋ฅด๊ณ  ์˜ค๋ฅธ์ชฝ ํ•˜๋‹จ์— Target Membership์„ ์ฒดํฌํ•ด์ค€๋‹ค. info.plist์—์„œ Fonts provided by apllication์—์„œ ๋‹ค์šด๋ฐ›์€ ํฐํŠธ์ด๋ฆ„์„ ์•„์ดํ…œ์— ๋„ฃ์–ด์ค€๋‹ค Font Custom์œผ๋กœ ๋“ค์–ด๊ฐ€์„œ Family๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋‹ค์šด๋ฐ›์€ ํฐํŠธํŒŒ์ผ์ด ์žˆ๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋„ค๋น„๊ฒŒ์ด์…˜๋ฐ”์˜ ํƒ€์ดํ‹€ ํฐํŠธ๋„ ๋ฐ”๊พธ๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ์Šคํ† ๋ฆฌ๋ณด๋“œ ์ƒ์—์„  ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ํฐํŠธ๊ฐ€ ๋ช‡ ๊ฐœ ์—†์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฝ”๋“œ๋กœ ๋„ฃ์–ด์ฃผ๋Š” ๋ฒ•์„ ์•Œ์•„๋ณด์•˜๋Š”๋ฐ ๋„ค๋น„๊ฒŒ์ด์…˜๋ฐ”์—์„œ ํƒ€์ดํ‹€์— ์–ดํŠธ๋ฆฌ๋ทฐํŠธ๋ฅผ ๋„ฃ์–ด์ฃผ๋ฉด ๋๋‹ค. ์—ฌ๊ธฐ์„œ ํ—ท๊ฐˆ๋ฆฐ ์ ์€ ํฐํŠธ์ด๋ฆ„์ด ํŒŒ์ผ์ด๋ฆ„์ธ๊ฐ€? ์•„๋‹ˆ๋ฉด Family์— ์žˆ๋Š” ์ด๋ฆ„? Style์— ์žˆ๋Š” ์ด๋ฆ„?์ธ์ง€์˜€๋‹ค. ์ •๋‹ต์€ Family์— ์žˆ๋Š” ์ด๋ฆ„์„ ๋„ฃ์–ด.. 2020. 1. 13.
[ํ•ด๊ฒฐ๋ฒ• ํฌํ•จ] ์ดˆ๊ธฐ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ ์„ ์–ธ ์—๋Ÿฌ(Failed to instantiate the default view controller for UIMainStoryboardFile 'Main') 2020-01-13 14:44:29.197209+0900 YoungWord[2743:123327] [WindowScene] Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the designated entry point is not set? ์–ดํŠธ๋ฆฌ๋ทฐํŠธ ์ธ์ŠคํŽ™ํ„ฐ๋กœ๊ฐ€์„œ is Initial View Controller์— ์ฒ˜์Œ ๋œฐ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ ์„ค์ •ํ•˜๋ฉด ๋œ๋‹ค. 2020. 1. 13.
Edabit Very easy Multiple of 100 Swift 100์œผ๋กœ ๋‚˜๋ˆ ์ง€๋Š” ํ•จ์ˆ˜ ์ž‘์„ฑํ•˜๊ธฐ //ํ•ต์‹ฌ %๋ฅผ ์•Œ๊ณ ์žˆ๋Š๋ƒ func divisible(_ num: Int) -> Bool { return num%100 == 0 } 2020. 1. 13.
[Swift] ๋ฐฑ์ค€ํ”„๋กœ๊ทธ๋ž˜๋ฐ 1๋‹จ๊ณ„ 1,2,3,4,5๋ฒˆ 1๋ฒˆ Hello World! ์ถœ๋ ฅ print("Hello World") 2๋ฒˆ ๊ฐ•ํ•œ์นœ๊ตฌ ๋Œ€ํ•œ์œก๊ตฐ ๊ฐ•ํ•œ์นœ๊ตฌ ๋Œ€ํ•œ์œก๊ตฐ ์ถœ๋ ฅ ํ•ต์‹ฌ \n์„ ์•„๋Š๋ƒ print("๊ฐ•ํ•œ์นœ๊ตฌ ๋Œ€ํ•œ์œก๊ตฐ\n๊ฐ•ํ•œ์นœ๊ตฌ ๋Œ€ํ•œ์œก๊ตฐ") 3๋ฒˆ ๊ณ ์–‘์ด ์ถœ๋ ฅ \ /\ ) ( ') ( / ) \(__)| ํ•ต์‹ฌ \๋ฅผ ์ถœ๋ ฅํ•˜๋ ค๋ฉด ์•ž์— \ํ•œ๋ฒˆ ๋” ๋ถ™์—ฌ์„œ \\์ด๋ ‡๊ฒŒ ์จ์•ผ๋œ๋‹ค! print("\\ /\\\n ) ( ')\n( / )\n \\(__)|") 4๋ฒˆ ๊ฐœ ์ถœ๋ ฅ ํ•ต์‹ฌ์€ "์™€ \๋ฅผ ์–ด๋–ป๊ฒŒ ์ถœ๋ ฅํ•˜๋Š” ๊ฐ€ ๋ฐฉ๋ฒ•์€ ์•ž์—\๋ฅผ ๋ถ™์—ฌ์ฃผ๋ฉด ๋œ๋‹ค! print("|\\_/|\n|q p| /}\n( 0 )\"\"\"\\\n|\"^\"` |\n||_/=\\\\__|") 5๋ฒˆ ์ •์ˆ˜ A์™€ B๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ  A+B๋ฅผ ์ถœ๋ ฅํ•˜๋ผ - ๊ณ„์† ์ปดํŒŒ์ผ ์—๋Ÿฌ ๋œจ๋”๋‹ˆ ๊ฐ‘์ž๊ธฐ ๋œ๋‹ค. ์˜ˆ์ œ ์ž…๋ ฅ :1 2 ์ถœ๋ ฅ.. 2020. 1. 13.
[iOS] ๋„ค๋น„๊ฒŒ์ด์…˜ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์—ฐ๊ฒฐ๋œ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ์— ์„ธ๊ทธ๊ฐ’ ๋„˜๊ธฐ๊ธฐ(UINavigationController Segue and UIRootViewController) ์„ธ๊ทธ๋ฅผ ์ด์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๋„˜๊ธฐ๋ ค๋‹ค๊ฐ€ ๋„ค๋น„๊ฒŒ์ด์…˜์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์—ฐ๊ฒฐ๋œ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ์— ๋ฐ”๋กœ ๋„˜๊ธฐ๋‹ˆ๊น ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”๊ฐ€ ์ƒ๋žต๋˜๋ฉด์„œ ํ™”๋ฉด์ด ์ „ํ™˜๋˜์—ˆ๋‹ค. ์•„๋ž˜์ฒ˜๋Ÿผ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์€ ๋„ค๋น„๊ฒŒ์ด์…˜์ปจํŠธ๋กค๋Ÿฌ์— ์„ธ๊ทธ๋ฅผ ๊ฑธ์–ด์ค€ ๋’ค ๋„ค๋น„๊ฒŒ์ด์…˜ ์ปจํŠธ๋กค๋Ÿฌ์™€ ์—ฐ๊ฒฐ๋œ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด์—ˆ๋‹ค. ์•„๋ž˜์ฒ˜๋Ÿผ ์„ธ๊ทธ๋ฅผ ๋„ค๋น„๊ฒŒ์ด์…˜ ์ปจํŠธ๋กค๋Ÿฌ์— ์—ฐ๊ฒฐํ•ด์ฃผ๊ณ  identifier๋ฅผ ์ •ํ•ด์ค€๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐ’์„ ๋ณด๋‚ผ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ override func prepare๋ฅผ ํ†ตํ•ด ํ˜„์žฌ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ์˜ ํ…์ŠคํŠธํ•„๋“œ ๊ฐ’์„ ๋„ค๋น„๊ฒŒ์ด์…˜์˜ text ๋ณ€์ˆ˜์— ๋ณด๋‚ด์ฃผ๊ณ  ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ performSegue๊ฐ€ ๋˜๊ฒŒ ํ•œ๋‹ค. withIdentifier์—” ์•„๊นŒ ์ •ํ•ด๋†“์€ ๊ฒƒ์„ ๋„ฃ์–ด์ฃผ๋ฉด ๋œ๋‹ค. import UIKit class GoViewController: UIViewController { .. 2020. 1. 12.
Swift ์ด๋ฉ”์ผ ํ˜•์‹ ๊ฒ€์‚ฌํ•˜๊ธฐ(Email Validation) ์ด๋ฉ”์ผ ํ˜•์‹์„ ๊ฒ€์‚ฌํ•˜๋ ค๋ฉด ์ •๊ทœํ‘œํ˜„์‹(Regular Expression)์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ง€์‹์ด ์žˆ์–ด์•ผ ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ฉ”์ผ validation์ด๋‚˜ ํŒจ์Šค์›Œ๋“œ validation์„ ์น˜๋ฉด ๋‹ค์–‘ํ•œ ์˜ˆ์ œ๊ฐ€ ๋‚˜์˜ค๋‹ˆ๊น ์ผ๋‹จ์€ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ์กฐ๊ธˆ๋งŒ ์ดํ•ดํ•˜๊ณ  ๋‚˜์ค‘์— ์ •๊ทœํ‘œํ˜„์‹์„ ๊ณต๋ถ€ํ•˜๋„๋ก ํ•˜์ž. ์šฐ์„  ์ด๋ฉ”์ผ ๊ฒ€์‚ฌ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ํŒŒ๋ผ๋ฏธํ„ฐ์— ๋ฐ›์•„์˜ฌ ๋ฌธ์ž์—ด์„ ๋„ฃ์–ด์ค€๋‹ค. ์šฐ์„  ๊ฐ„๋‹จํ•˜๊ฒŒ let emailRegEx๋ฅผ ์„ค๋ช…ํ•˜๋ฉด [A-Z0-9a-z._%+-]์€ ์˜์–ด ๋Œ€๋ฌธ์ž ์†Œ๋ฌธ์ž ํŠน์ˆ˜๋ฌธ์ž ๋ชจ๋‘ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๋œป์ด๊ณ  +@ ๋Š” ์‚ฌ์ด์— ๋ฌด์กฐ๊ฑด @๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค. @๋’ค์—๋Š” [A-Za-z0-9.-] ๋Œ€๋ฌธ์ž ์†Œ๋ฌธ์ž ์ˆซ์ž .-๋งŒ ๋˜๊ณ  ๊ทธ ๋‹ค์Œ์— .์ด ์˜จ ์ดํ›„ [A-Za-z]๋Š” ์˜์–ด ๋Œ€๋ฌธ์ž ์†Œ๋ฌธ์ž๋งŒ ๊ฐ€๋Šฅ {2,64}๋Š” 2~64๊ธ€์ž๋งŒ ํ—ˆ์šฉํ•œ๋‹ค๋Š” ๋œป์ด.. 2020. 1. 11.
[iOS/UI] ํ…์ŠคํŠธํ•„๋“œ ์•ˆ์— ์ด๋ฏธ์ง€ ๋„ฃ๊ธฐ ๋ฐ ์—ฌ๋ฐฑ์ฃผ๊ธฐ(UIImage in UITextField and Padding) ํ…์ŠคํŠธํ•„๋“œ ์•ˆ์— ์ด๋ฏธ์ง€๋ฅผ ๋„ฃ๊ณ ์‹ถ์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์™ผ์ชฝ์œผ๋กœ ๋„ˆ๋ฌด ์น˜์šฐ์ณ์ ธ ์žˆ๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์–ด์„œ ์ด๋ฏธ์ง€๋Š” ์•ˆ๋„ฃ๊ณ  ์™ผ์ชฝ์— ํŒจ๋”ฉ์„ ์ฃผ๊ณ  ์‹ถ์—ˆ๋‹ค.ํ…์ŠคํŠธํ•„๋“œ์— ์ต์Šคํ…์…˜์„ ์ฃผ๊ณ  ์ฒซ ๋ฒˆ์งธ์—” ํŒจ๋”ฉ๋ทฐ๋ฅผ ๋”ฐ๋กœ ์ƒ์„ฑํ•ด์„œ width๊ฐ’์œผ๋กœ 10์„ ์ค˜๋ฒ„๋ ค์„œ 10๋งŒํผ ์™ผ์ชฝ์— ํŒจ๋”ฉ์„ ์ฃผ๋Š” ํšจ๊ณผ๋ฅผ ์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.extension UITextField { func addLeftPadding() { let paddingView = UIView(frame: CGRect(x: 0, y: 0, width: 10, height: self.frame.height)) self.leftView = paddingView self.leftViewMode = ViewMode.always } func addleftimage(image:UIImage) { let le.. 2020. 1. 10.
์ปค์Šคํ…€ ์ด๋ฏธ์ง€ํ”ฝ์ปค ๋ฐ ๋ฉ€ํ‹ฐํ”ฝ(Custom ImagePicker and MultiPick) ํ•œ 2์ฃผ๋™์•ˆ ์ฐพ์•„ ํ—ค๋ฉจ๋˜ ๊ฑด๋ฐ ๊ฒฐ๊ตญ ํ•ด๊ฒฐํ•ด๋ƒˆ๋‹ค. ์•จ๋ฒ”์— ์žˆ๋Š” ์‚ฌ์ง„์„ ๊ณ ๋ฅผ ๋•Œ ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ๊ณ ๋ฅด๊ณ ์‹ถ๊ณ  ๋‚ด๊ฐ€ ์ปค์Šคํ…€ํ•œ ๋””์ž์ธ์œผ๋กœ ํ”ฝ๋˜๋Š” ๋ชจ์Šต์„ ๋„์šฐ๊ณ ์‹ถ์—ˆ๋Š”๋ฐ ์—ฌ๋Ÿฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์จ๋„ ์˜ค๋ฅ˜๊ฐ€ ๋œจ๊ณ  ์‰ฝ๊ฒŒ ํ•  ์ˆ˜๊ฐ€ ์—†์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์•จ๋ฒ”์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€ ๋‚ด๊ฐ€ ๋งŒ๋“  ์ฝœ๋ ‰์…˜๋ทฐ์— ์ €์žฅํ•ด์„œ ์…€๋ ‰ํŠธ๋  ๋•Œ๋งˆ๋‹ค ๋ฐ”๊พธ๋ฉด ๋˜๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐ์„ ํ–ˆ๋‹ค. ์•จ๋ฒ”์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฒ•์€ 1.Appdelegate์— import Photos ๋ฅผ ํ•ด์ค€๋‹ค. 2. PHFetchResult๋ฅผ ๋‹ด์€ allPhotos์™€ ๊ทธ ๊ฐฏ์ˆ˜์ธ photocount๋ฅผ ์ „์—ญ ๋ณ€์ˆ˜ ์„ ์–ธํ•ด์ค€๋‹ค 3. didFinishLaunchingWithIptions ํ•จ์ˆ˜ ์•ˆ์— ์•„๋ž˜ ํ•จ์ˆ˜๋ฅผ ๋„ฃ์–ด์ค€ ๋’ค 4.์›ํ•˜๋Š” ์ฝœ๋ ‰์…˜๋ทฐ๊ฐ€ ์žˆ๋Š” ํด๋ž˜์Šค๋กœ ๊ฐ€์„œ numberOfItemsInSection์— p.. 2020. 1. 9.
[iOS/UI] ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ” ์•„์ดํ…œ ํŠน์ •๋ถ€๋ถ„ ์ƒ‰ ๋‹ค๋ฅด๊ฒŒ ํ•˜๊ธฐ ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”์—์„  ์•„์ดํ…œ์„ ์ƒ‰์„ ํŠน์ • ๋ถ€๋ถ„๋งŒ ๋ฐ”๊ฟ€ ์ˆ˜๊ฐ€ ์—†์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฐพ์•„๋ณธ ๊ฒฐ๊ณผ ๋ฒ„ํŠผ์„ ์ปค์Šคํ…ํ•˜์—ฌ ๊ทธ ์œ„์— ์ž…ํ˜€์ค€ ๋‹ค์Œ ๋ฒ„ํŠผ์— ์• ๋“œํƒ€๊ฒŸ์„ ๊ฑธ์–ด์ฃผ๋ฉด ๋๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด ์•Œ๋žŒ๋ฑƒ์ง€์™€ ๊ฐ™์€ ์ด๋ฏธ์ง€๋ฅผ ์•„๋ž˜ ๋™๊ทธ๋ž€ ๋ถ€๋ถ„๋งŒ ๋นจ๊ฐ›๊ฒŒ ํ‘œํ˜„๋˜๋Š” ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. 2020. 1. 7.
728x90
๋ฐ˜์‘ํ˜•