๊ฐœ๋ฐœ ์‚ฝ์งˆ๊ธฐ/iOS

[UITextField] ๋น„๋ฐ€ ๋ฒˆํ˜ธ ์ž…๋ ฅ ๋ฐ›๊ธฐ

๋ ˆ๋ชฌํ‚ด๐Ÿ‹ 2020. 1. 19. 12:05

UITextField์—์„œ ๋น„๋ฐ€ ๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š” ์ƒํ™ฉ์€ ํ”ํ•ฉ๋‹ˆ๋‹ค.

 

์•„๋ž˜ ๋‘ ๊ฐ€์ง€ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋น„๋ฒˆ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€  UITextField์—์„œ ์ง€์›ํ•ด์ฃผ๋Š” ์†์„ฑ์œผ๋กœ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

1. ์ž…๋ ฅ๋˜๋Š” ํŒจ์Šค์›Œ๋“œ๋ฅผ ๊ฐ์ถœ ๊ฒƒ

2. ์ž…๋ ฅ๋˜๋Š” ํŒจ์Šค์›Œ๋“œ๋Š” ์˜์–ด ๋Œ€๋ฌธ์ž, ์†Œ๋ฌธ์ž, ์ˆซ์ž, ํŠน์ˆ˜๋ฌธ์ž ๋กœ ์ด๋ฃจ์–ด์งˆ ๊ฒƒ. 

1. ์ž…๋ ฅ๋˜๋Š” ํŒจ์Šค์›Œ๋“œ๋ฅผ ๊ฐ์ถœ ๊ฒƒ

 

iOS์—์„œ ์ง€์›ํ•ด์ฃผ๋Š” UI

 

์•„๋ž˜ ํ•œ ์ค„ ๋งŒ ์ถ”๊ฐ€ํ•ด ์ฃผ๋ฉด ์œ„์™€ ๊ฐ™์€ ํšจ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

textField.isSecureTextEntry = true

 

2. ์ž…๋ ฅ๋˜๋Š” ํŒจ์Šค์›Œ๋“œ๋Š” ์˜์–ด ๋Œ€๋ฌธ์ž, ์†Œ๋ฌธ์ž, ์ˆซ์ž, ํŠน์ˆ˜๋ฌธ์ž ๋กœ ์ด๋ฃจ์–ด์งˆ ๊ฒƒ. 

 

UITextField์˜ textContentType์—  .Password๋ฅผ ์„ธํŒ…ํ•ด, ํ‚คํŒจ๋“œ๋ฅผ ๋น„๋ฐ€๋ฒˆํ˜ธ์— ์‚ฌ์šฉ๋˜๋Š” ๋ฌธ์ž๋“ค (์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž, ์•„์Šคํ‚ค ํŠน์ˆ˜๋ฌธ์ž, ์ˆซ์ž๋“ค)๋กœ๋งŒ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

UITextField์˜ textContentType์˜ ๊ธฐ๋ณธ ๊ฐ’์€ nil๋กœ, ์•„๋ž˜์™€ ๊ฐ™์ด ๋น„๋ฐ€๋ฒˆํ˜ธ์—๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด๋ชจํ‹ฐ์ฝ˜, ๋…น์Œ ๊ธฐ๋Šฅ, ์–ธ์–ด ๋ณ€๊ฒฝ ๋“ฑ์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ textContentType. ์ด๋ชจํ‹ฐ์ฝ˜, ๋…น์Œ ๊ธฐ๋Šฅ ๋“ฑ ์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค. 

 

ํŒจ์Šค์›Œ๋“œ๋ฅผ ์œ„ํ•œ ์†์„ฑ์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ง€์ •์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

 

textField.textContentType = .password // ์ด ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ๊ธฐ๋ณธ ํƒ€์ž…๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.
   //UITextInputTraits.h์˜ ํŒจ์Šค์›Œ๋“œ ๊ด€๋ จ UITextContentType
   
    @available(iOS 11.0, *)
    public static let password: UITextContentType 
    //์ผ๋ฐ˜์ ์ธ ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ์ฐฝ

    @available(iOS 12.0, *)
    public static let newPassword: UITextContentType
    //์ƒˆ ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ ์‹œ ์‚ฌ์šฉ

์œ„์˜ ๊ฐ’์„ ์„ค์ •ํ•˜๋ฉด, autoFill ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ, ๊ทธ๊ฑด ๋‹ค์Œ ์‹œ๊ฐ„์— ์•Œ์•„๋ณด๋Š” ๊ฒƒ์œผ๋กœ...

https://developer.apple.com/documentation/security/password_autofill/enabling_password_autofill_on_a_text_input_view

 

์œ„์™€ ๊ฐ™์ด ์†์„ฑ์„ ์„ค์ •ํ•ด์ฃผ๊ณ , ํ‚คํŒจ๋“œ๋ฅผ ๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค

 

 

1. password

.password ์ ์šฉ ์‹œ

 

2.newPassword

.newPassword ์ ์šฉ ์‹œ. ํŠน๋ณ„ํžˆ ๋‹ค๋ฅธ ์ ์€ ์ฐพ์•„๋‚ด์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค... ใ… .ใ…  

ํ ... ์ƒˆ๋กœ์šด ๋น„๋ฒˆ ์ œ์•ˆ ๊ฐ™์€ UI๊ฐ€ ๋œฐ ๊ฒƒ ๊ฐ™์•˜๋Š”๋ฐ ๋œจ์ง€ ์•Š๋„ค์š”...? ์ด ๊ฒƒ๋„ ์กฐ๊ธˆ ๋” ์กฐ์‚ฌํ•ด๋ณด๊ณ  ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•ด๋ด์•ผ๊ฒ ์Šต๋‹ˆ๋‹ค.