내보기 컨트롤러에 팝업이 표시되고 팝업에 tableview와 텍스트 필드가 포함되어 있으므로 텍스트 필드를 클릭 할 때 팝업 높이가 동일하게 유지됩니다. 그래서 나는 텍스트 필드를 클릭했을 때 내 팝업보기의 높이를 줄이려고합니다. 아무도 나를 도울 수 없습니까?키보드가 나타날 때 팝업 높이를 줄이는 방법은 무엇입니까?
0
A
답변
0
그냥 두 당신은 키보드가 나타날 때 관리 코드를 시도 알림 통지를 자동
NotificationCenter.default.addObserver(self, selector: #selector(ClassName.keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(ClassName.keyboardWillHide), name: NSNotification.Name.UIKeyboardWillHide, object: nil)
표를 추가
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.keyboardWasShown), name: UIKeyboardDidShowNotification, object: nil)
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.keyboardWillBeHidden), name: UIKeyboardWillHideNotification, object: nil)
// keyboard delegates method implement
func keyboardWasShown(aNotification: NSNotification) {
print("Keyboard is active.")
// write your code that changes pop up frame.
}
func keyboardWillBeHidden(aNotification: NSNotification) {
print("Keyboard is hidden")
// write your code that changes pop up default frame.
}
+0
Dear .. 고맙습니다. 제대로 작동하고 있습니다. 내 경우에는 내가 바꾸어야하는 유일한 것은 keyboardwillShown에 대한 알림 이름입니다. –
+0
@Akashvishwakarma 우리가 코드에서 수행해야 할 변경 사항을 광산으로 알려주고 난 후방에서 도움을 주면 내 대답을 승인하고 투표 해 주셔서 감사합니다. –
0
있는 viewDidLoad에서이 줄을()를 추가
func keyboardWillShow(notification: NSNotification) {
if let keyboardSize = (notification.userInfo?[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue {
UIView.animate(withDuration: 0.5) {
var contentInsets:UIEdgeInsets
if (UIInterfaceOrientationIsPortrait(UIApplication.shared.statusBarOrientation)) {
contentInsets = UIEdgeInsetsMake(0.0, 0.0, (keyboardSize.height - (self.tabBarController?.tabBar.frame.size.height)!), 0.0);
} else {
contentInsets = UIEdgeInsetsMake(0.0, 0.0, (keyboardSize.width - (self.tabBarController?.tabBar.frame.size.width)!), 0.0);
}
self.tableView.contentInset = contentInsets
self.tableView.scrollIndicatorInsets = self.tableView.contentInset
}
}
}
func keyboardWillHide(notification: NSNotification) {
UIView.animate(withDuration: 0.5) {
let contentInset:UIEdgeInsets = UIEdgeInsets.zero
self.tableView.contentInset = contentInset
}
}
관련 문제
- 1. 키보드가 클릭에 나타날 때 UITextField 높이를 관리하는 방법은 무엇입니까?
- 2. iPad의 UIModalPresentationFormSheet. 키보드가 나타날 때 UITextView 높이를 조절하는 방법
- 3. 키보드가 나타날 때 UIView 관리
- 4. 키보드가 나타날 때 스크롤을 봅니다.
- 5. 키보드가 나타날 때 레이아웃이 좁아짐
- 6. 소프트 키보드가 전체 화면으로 나타날 때 헤더를 유지하는 방법은 무엇입니까?
- 7. 키보드가 나타날 때 피커보기가 비슷하게 나타날 때 스크롤 화면을 표시하는 방법은 무엇입니까?
- 8. 키보드가 나타날 때 래핑되는 안드로이드 레이아웃
- 9. 탭 높이를 줄이는 방법은?
- 10. 가상 키보드가 나타날 때 구성 요소를 적용하십시오.
- 11. 안드로이드 키보드가 나타날 때 Unity 리사이즈 화면
- 12. 제약 조건이있는 키보드가 나타날 때 스위프트 이동보기
- 13. 스위프트 : 키보드가 나타날 때 UIView의 크기를 변경
- 14. iOS : 키보드가 나타날 때 어떤 이벤트가 발생합니까?
- 15. 키보드가 나타날 때 레이아웃 슬라이딩을 방지하는 방법
- 16. 키보드가 나타날 때 UIScrollbar가 위로 스크롤되지 않습니다.
- 17. 키보드가 나타날 때 배경을 비활성화하는 방법
- 18. 소프트 키보드가 나타날 때 이벤트를 잡는 방법
- 19. 키보드가 나타날 때 GUI 스큐업을 중지 하시겠습니까?
- 20. 키보드가 나타날 때 테이블 뷰 슬라이딩
- 21. 입력 높이를 줄이는 방법은 무엇입니까? Ionic2
- 22. Silverlight에서 DataGridCell의 높이를 줄이는 방법은 무엇입니까?
- 23. ckeditor 4.4.5에서 줄 높이를 줄이는 방법은 무엇입니까?
- 24. UISlider 프레임 높이를 줄이는 방법은 무엇입니까?
- 25. 이 경우 이미지 높이를 줄이는 방법은 무엇입니까?
- 26. GridBagLayout & JScrollPane : 행 높이를 줄이는 방법은 무엇입니까?
- 27. 사각형의 높이를 줄이는 방법은 무엇입니까? (자바, AWT)
- 28. TableView를 IB로 구성했을 때 TableView 높이를 줄이는 방법은 무엇입니까?
- 29. 팝업 창이 나타날 때 취소를 해제하는 방법
- 30. 팝업이 나타날 때 위쪽 표시 줄이 숨김
UITextField – ashmi123
의 textfieldbegin 메소드에서 popUp보기의 프레임을 설정할 수 있습니다. 키보드가 나타나면 팝업을 위로 이동해야합니다. 키보드가 닫히면 팝업을 실제 위치로 재설정하십시오. – Sommm