๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŽ iOS/UI

[iOS/UI] ํ‚ค๋ณด๋“œ ์œ„์— ๋ฒ„ํŠผ๋‹ฌ๊ธฐ(add custom buttons above Keyboard)

by Fomagran ๐Ÿ’ป 2021. 1. 22.
728x90
๋ฐ˜์‘ํ˜•

์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค!!

 

ํ‚ค๋ณด๋“œ ์ž…๋ ฅํ• ๋•Œ ํ‚ค๋ณด๋“œ๋ฅผ ์‚ฌ๋ผ์ง€๊ฒŒ ํ•˜๊ฑฐ๋‚˜ ํ• ๋•Œ ํ‚ค๋ณด๋“œ ์œ„์— done๋ฒ„ํŠผ์ด๋‚˜ 

 

์•„๋‹ˆ๋ฉด ํ‚ค๋ณด๋“œ ์•„๋ž˜์žˆ๋Š” ๋ฒ„ํŠผ์„ ๋ณด๊ฒŒ ํ•˜๊ธฐ์œ„ํ•ด์„œ ๋ฒ„ํŠผ์ด ํ‚ค๋ณด๋“œ ์œ„๋กœ ๋”ฐ๋ผ์˜ค๋Š” ๋“ฏํ•œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์—ˆ์„ํ…๋ฐ

 

๋ฐ”๋กœ ์˜ค๋Š˜์€ ํ‚ค๋ณด๋“œ ์œ„์— ์ด์ „๊ณผ ๋‹ค์Œ ๋ฒ„ํŠผ์„ ๋„ฃ์–ด๋ณผ๊ฑฐ์—์š”!

 

๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~


Storyboard

 

๋จผ์ € ์Šคํ† ๋ฆฌ๋ณด๋“œ์— ํ…์ŠคํŠธํ•„๋“œ ํ•˜๋‚˜๋ฅผ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค.

 

 


ViewController

 

์œ„์—์„œ ๋งŒ๋“ค์–ด์ค€ ํ…์ŠคํŠธํ•„๋“œ๋ฅผ ์—ฐ๊ฒฐํ•ด์ค๋‹ˆ๋‹ค.

 

 

 

๋ฐ”๋กœ UIToolbar๋ฅผ ํ•˜๋‚˜ ๋งŒ๋“ค์–ด์ฃผ๋Š”๋ฐ์š”.

 

 

 

์ด์ œ ์—ฌ๊ธฐ์— ๋„ฃ์–ด์ค„ ๋ฒ„ํŠผ๋“ค์ด ํ•„์š”ํ•˜๊ฒ ์ฃ ? ๋ฐ”๋กœ ์ด์ „๋ฒ„ํŠผ์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค.

 

 

๊ทธ๋ฆฌ๊ณ  ๋‹ค์Œ๋ฒ„ํŠผ๋„ ๋˜‘๊ฐ™์ด ๋งŒ๋“ค์–ด์ฃผ์„ธ์š”.

 

 

์ด๋ ‡๊ฒŒ ๋ฒ„ํŠผ์„ ๋งŒ๋“œ์…จ์œผ๋ฉด ๋ฐ”๋กœ ํˆด๋ฐ”์— ๋„ฃ์–ด์ฃผ๋ฉด ๋˜๋Š๋ƒ? 

 

์•ˆ๋ฉ๋‹ˆ๋‹ค. ํˆด๋ฐ”์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์•„์ดํ…œ๋“ค์€ UIBarButtonItem๋งŒ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ์–ด์š”.

 

๊ทธ๋ž˜์„œ ๋ฐ”๋กœ UIBarButtonItem์— ์ปค์Šคํ…€๋ทฐ๋ฅผ ๋งŒ๋“ค์–ด์ฃผ์‹  ์ด์ „๋ฒ„ํŠผ ๋‹ค์Œ๋ฒ„ํŠผ์œผ๋กœ ์„ค์ •ํ•ด์ค๋‹ˆ๋‹ค.

 

 

๊ทธ ๋‹ค์Œ ํˆด๋ฐ” ์•„์ดํ…œ์— ๋„ฃ์–ด์ฃผ์„ธ์š”.

 

 

 

๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ ๋งจ ์ฒ˜์Œ ๋งŒ๋“ค์–ด์ฃผ์‹  ํ…์ŠคํŠธํ•„๋“œ์— inputAccessoryView๋ฅผ toolBar๋กœ ์„ค์ •ํ•ด์ฃผ์„ธ์š”.

 

 

์ด๋ ‡๊ฒŒ ํ•ด์ฃผ์‹œ๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ์ด์ „๊ณผ ๋‹ค์Œ๋ฒ„ํŠผ์ด ํ‚ค๋ณด๋“œ๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ ๋ณด์ด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค!!

 

 


๋ณด๋„ˆ์Šค

 

๋งŒ์•ฝ "Done๋ฒ„ํŠผ๋งŒ ๊ตฌํ˜„ํ•˜๊ณ ์‹ถ์€๋ฐ ๋‚˜๋Š” ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜ํ•˜๊ฒŒ ํ•˜๊ณ ์‹ถ์–ด" ๋ฅผ ์›ํ•˜์‹œ๋Š” ๊ฒฝ์šฐ 

 

๊ทธ๋Ÿด๋• ํˆด๋ฐ”์— ๋นˆ๊ณต๊ฐ„์„ ๋งŒ๋“ค์–ด์ฃผ์…”์•ผ๋ฉ๋‹ˆ๋‹ค.

 

๋นˆ๊ณต๊ฐ„์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„  UIBarButtonItem์— flexibleSpace๋ฅผ ๋„ฃ์–ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

 

์ด๊ฑธ ๋„ฃ์–ด์ฃผ์‹œ๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด Done๋ฒ„ํŠผ์ด ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

 


Source Code

 

์ด์ „,๋‹ค์Œ๋ฒ„ํŠผ

์˜ค๋ฅธ์ชฝ์— Done๋ฒ„ํŠผ

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€