Tôi đang gắn một UIToolbar
vào UITextView
làm inputAccessoryView
để thêm nút để loại bỏ bàn phím. Điều này hoạt động tốt và có vẻ chính xác khi thiết bị ở chế độ dọc. Nhưng tôi đang gặp khó khăn trong việc tìm cách thay đổi kích thước thanh công cụ thành chiều cao thấp hơn được sử dụng cho thanh công cụ khi thiết bị ở chế độ ngang.Tôi nên nhập inputAccessoryView để thay đổi kích thước khi xoay thiết bị như thế nào?
tôi thêm thanh công cụ trong phương pháp xem văn bản của tôi đại biểu của -textViewShouldBeginEditing:
:
if (!textView.inputAccessoryView) {
UIToolbar *keyboardBar = [[UIToolbar alloc] init];
keyboardBar.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleTopMargin;
keyboardBar.barStyle = UIBarStyleBlackTranslucent;
UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(dismissKeyboard:)];
[keyboardBar setItems:[NSArray arrayWithObjects:spaceItem, doneButton, nil]];
[spaceItem release];
[doneButton release];
[keyboardBar sizeToFit];
textView.inputAccessoryView = keyboardBar;
[keyboardBar release];
}
tôi nhận được hành vi lạ từ mã này trong chế độ phong cảnh, mặc dù. Nếu tôi bắt đầu chỉnh sửa ở chế độ ngang, thanh công cụ có chiều cao ngang nhưng nút Xong được vẽ một nửa khỏi màn hình. Nếu sau đó tôi xoay sang chế độ Chân dung, nút Xong được vẽ ở vị trí chính xác và nút này vẫn ở đúng vị trí khi tôi quay lại chế độ ngang.
Nếu tôi bắt đầu chỉnh sửa ở chế độ dọc, thanh công cụ được vẽ bằng chiều cao dọc, nhưng nút Xong được vẽ ở vị trí chính xác. Nếu sau đó tôi xoay sang chế độ ngang, thanh công cụ vẫn giữ chiều cao dọc, nhưng nút Xong vẫn được vẽ ở vị trí chính xác ít nhất.
Bất kỳ đề xuất nào về cách thay đổi kích thước này khi thiết bị quay? Tôi thực sự hy vọng có một cách tự động hơn là tự cắm các số ma thuật chiều cao vào một trong các sự kiện xoay của bộ điều khiển xem.
Bạn có thể tìm thấy điều này trong một số sử dụng quá: http://stackoverflow.com/a/18926749/1633251 –