Соображения для включения библиотеки как двоичный файл по сравнению с источником

Вопрос состоит в том, как сделать это с помощью клавиши возврата, но я думаю, что это может помочь кому-то с намерением просто заставить клавиатуру исчезнуть при использовании UITextView:

@IBOutlet weak var textView: UITextView!

private func addToolBarForTextView() {
  let textViewToolbar: UIToolbar = UIToolbar()
  textViewToolbar = UIBarStyle.Default
  textViewToolbar = [
    UIBarButtonItem(title: "Cancel", style: UIBarButtonItemStyle.Done, target: self, action: #selector(self.cancelInput)),
    UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: self, action: nil),
    UIBarButtonItem(title: "Done", style: UIBarButtonItemStyle.Done, target: self, action: #selector(self.doneInput))
  ]
  textViewToolbar()
  self.textView.inputAccessoryView = textViewToolbar //do it for every relevant textView if there are more than one
}

func doneInput() {
  self.textView.resignFirstResponder()
}

func cancelInput() {
  self.textView.text = ""
  self.textView.resignFirstResponder()
}

Вызов addToolBarForTextView () в viewDidLoad или каком-либо другом методе жизненного цикла.

Кажется, это было идеальное решение для меня.

Приветствия,

Мурат

7
задан Mogsdad 15 September 2015 в 15:40
поделиться

4 ответа

Я интерпретирую этот вопрос как:

«Следует ли мне скомпилировать код библиотеки C один раз и включить двоичную библиотеку в свой проект? Или мне следует включить весь исходный код и скомпилировать его каждый раз, когда я создаю свое приложение? »

Это зависит от обстоятельств. Один из проектов, над которым я работаю, зависит от нескольких внешних библиотек. По сути, у нас есть простое правило:

  • Как вы думаете, вам нужно будет часто менять код в библиотеке C?

    • Если вы будете часто менять код или обновлять версии, включите исходный код и соберите его с помощью остальная часть вашего проекта.
    • Если вы не собираетесь менять код часто или вообще, возможно, имеет смысл просто включить предварительно созданный двоичный файл в ваш проект.

В зависимости от размера библиотеки, вы можете настроить его как отдельную цель в своем проекте или для большей гибкости, в качестве подпроекта вашего основного проекта.

Если бы я был на вашем месте, я бы заранее создал libssh2 и просто включил бы двоичную библиотеку в свой проект iPhone. Я бы, конечно, сохранил исходный код libssh2 на тот случай, если в будущем его нужно будет перестроить.

3
ответ дан 7 December 2019 в 10:06
поделиться

В библиотеке iPhone Three20 есть отличное руководство по добавлению их библиотеки в ваш проект xcode. Дайте ему шанс.

1
ответ дан 7 December 2019 в 10:06
поделиться

У меня есть приложение для iPhone, которое составляет 90% c. У меня не было проблем с добавлением сторонних источников в мой проект и компиляцией. Я использую Lua, zLib и libpng без изменений. Я также включил стандартные библиотеки, такие как unistd и libgen, и они просто работают ™

2
ответ дан 7 December 2019 в 10:06
поделиться

Я думаю, вы обнаружите, что в конечном итоге вам будет лучше встроить его в отдельную библиотеку и связать с вашим приложением. Это упрощает интеграцию в будущие приложения. Еще одно преимущество заключается в том, что он способствует разделению кода. Если вы чувствуете себя достаточно уверенно с библиотекой, вы можете связать свой исполняемый файл отладки с релизной сборкой библиотеки и получить дополнительную производительность.

Я действительно не могу думать о каких-либо недостатках создания библиотеки после первоначальной стоимости настраивать его и иметь дополнительный проект, который нужно изменить, если у вас есть какие-то изменения, которые необходимо внести во все ваши проекты. Даже если вы не знаете, как сделать библиотеку для iPhone, это хороший повод для изучения.

Простое добавление исходного кода в ваш проект также должно работать нормально.

0
ответ дан 7 December 2019 в 10:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: