У меня есть UIView, где я буду писать действия для кнопок. В XIB-файле у меня есть панель, расположенная над клавиатурой с этими кнопками. Как подключить эти кнопки к ViewController с UITextView и при нажатии кнопки действие должно выполняться в UITextView (например: когда я нажимаю кнопку «Полужирный», выбранный текст в UITextView должен быть полужирным) [! [Введите описание изображения здесь] [2]] [2]Подключить UIView с XIB к другому ViewController
import UIKit
protocol NoteViewDelegate {
func didUpdateNoteWithTitle(newTitle : String, andBody newBody : String)
}
class NewNoteViewController: UIViewController , UITextViewDelegate {
var delegate : NoteViewDelegate?
@IBOutlet weak var textBody: UITextView!
var strBodyText : String!
override func viewDidLoad() {
super.viewDidLoad()
self.textBody.text = self.strBodyText
self.textBody.becomeFirstResponder()
self.textBody.delegate = self
NotificationCenter.default.addObserver(self, selector: #selector(NewNoteViewController.updateTextView(notification:)) , name: Notification.Name.UIKeyboardWillChangeFrame, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(NewNoteViewController.updateTextView(notification:)) , name: Notification.Name.UIKeyboardWillHide, object: nil)
textBody.inputAccessoryView = Bundle.main.loadNibNamed("CustomAccessoryView", owner: self, options: nil)?.first as? UIView
}
func updateTextView (notification:Notification) {
let userInfo = notification.userInfo!
let keyboardEndFrameScreenCoordinates = (userInfo[UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
let keyboardEndFrame = self.view.convert(keyboardEndFrameScreenCoordinates, to: view.window)
if notification.name == Notification.Name.UIKeyboardWillHide {
textBody.contentInset = UIEdgeInsets.zero
}else{
textBody.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: keyboardEndFrame.height, right: 0)
textBody.scrollIndicatorInsets = textBody.contentInset
}
textBody.scrollRangeToVisible(textBody.selectedRange)
}
Я не знаю, где можно назвать «addTarget (_: action: for :)». Я сделал этот бар с кнопками в файле .xib. –
. Вы не указали свой код для того, как вы загружаете _.xib_, о котором вы говорили, поэтому я не могу рассказать вам о том, что я сказал: в то время, когда вы его загружаете, у вас есть вам нужна ссылка. Вы показали совершенно бессмысленный снимок экрана. Код - это то, что важно. – matt
Hahaha да, я знаю, я хотел показать кнопки, и вот код –