개발/프로젝트
[ios] Locord 개발일지 - emojiPicker 팝업
yehey
2021. 2. 13. 18:33
참고자료 :github.com/levantAJ/EmojiPicker
levantAJ/EmojiPicker
This library to show a popover to select emoji for iOS - levantAJ/EmojiPicker
github.com
위 사이트에서 emojiPicker를 pod 해서 사용했다.
직접 만들고 싶었지만 아직 swift 기본이 부족하다고 생각해서ㅠ
해당 사이트에 사용법이나 설정 등이 잘 나와있기 때문에 사용에 어려운 점은 없었다.
import EmojiPicker
let emojiPickerVC = EmojiPicker.viewController
emojiPickerVC.sourceView = view
emojiPickerVC.sourceRect = targetView.frame
present(emojiPickerVC, animated: true, completion: nil)
사용법에 위와 같이 나와있었지만 업데이트가 되었는지 sourceView 는 찾을 수 없었다.
사실 찾긴 찾았는데 굳이 없어도 잘 돌아가긴 했다.
Locord 에 사용한 코드
import EmojiPicker
class record_creation: UIViewController, UITextFieldDelegate{
@IBOutlet weak var emojiButton : UIButton!
let emojipickerVC = EmojiPicker.viewController
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
//imagePicker.delegate = self
//self.dateField.dateChanged = {date in print(date)}
}
//이모지 버튼과 연결할 함수
@IBAction func emojiTouch(_ sender: UIButton){
emojipickerVC.sourceRect = emojiButton.frame //이모지와 연결할 프레임(?)
//emojipickerVC.popoverPresentationController?.sourceView = ??
emojipickerVC.size = CGSize(width: 300, height: 400) //이모지 피커 사이즈 조절
emojipickerVC.delegate=self //delegate self
emojipickerVC.dismissAfterSelected = true //선택 후 자동으로 창 사라지게
present(emojipickerVC, animated: true, completion: nil) //화면 보이게(?)
}
}
extension record_creation : EmojiPickerViewControllerDelegate{
//이모지 선택 후에 실행되는 함수
func emojiPickerViewController(_ controller: EmojiPickerViewController, didSelect emoji: String){
print(emoji)
emojiButton.setTitle(emoji, for: .normal) //버튼 제목을 이모지로 수정
}
}
저 sourceView 때문에 좀 헤맸다..ㅠ
이제 버튼 위치만 고정하면 게시글 등록 화면은 끝난다!!!!