Я пытаюсь создать простое приложение для ввода данных для Mac (не iPhone).
У него есть NSTableView (внутри NSScrollView), который содержит NSTextField, в котором пользователь вводит данные построчно.
То, что у меня есть, работает нормально, за исключением того, что для того, чтобы на самом деле можно было что-то ввести в текстовое поле, сначала нужно нажать клавишу «Ввод». Затем, когда вы нажимаете клавишу «Ввод» в конце, поле выходит из режима «редактирования», но выделение просто находится в той же строке. Необходимость нажимать «Ввод», «стрелка вниз», «Ввод» между каждой строкой вводимых данных не очень эффективна.
Я бы предпочел, чтобы при нажатии клавиши «Ввод» курсор перемещался вниз к следующей строке, и поле автоматически переводилось в режим «редактирования».
Я думал, что это должно быть довольно просто, но я весь вечер рвал на себе волосы без какого-либо прогресса, и я до сих пор даже не знаю, куда мне идти.
Я попытался найти некоторые настройки атрибутов в «инспекторах» в XCode, но ничего не увидел.
При поиске в Интернете предложения, похоже, все время возвращались к использованию First Responder. Поэкспериментируя с этим, мне только удалось заставить синее кольцо подсветки перемещаться вокруг моего TableView по требованию, но это все еще не переводит текстовое поле в режим редактирования и не перемещается на другую строку.
Наконец-то я нашел некоторую информацию о создании подклассов и реализации ваших собственных текстовых полей, но это кажется очень долгим и запутанным способом достижения этого.
Может ли кто-нибудь указать мне правильное направление относительно того, как это сделать?
Возможно, я использую неправильный вид контроля? Возможно, что-то еще более уместно. Обратите внимание, что каждая строка отличается, поэтому мне не нужны такие вещи, как перенос слов и т. Д.