Кажется, у меня возникает странная проблема при маршалинге следующего собственного кода iOS в nativescript:
CGRect keyboardRect = CGRectMake(0, 0, self.view.frame.size.width, 216);
AGEmojiKeyboardView *emojiKeyboardView = [[AGEmojiKeyboardView alloc] initWithFrame:keyboardRect
dataSource:self];
emojiKeyboardView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
emojiKeyboardView.delegate = self;
self.textView.inputView = emojiKeyboardView;
Эквивалент, который я придумал, следующий:
var keyboardRect = CGRectMake(0, 0, platform.screen.mainScreen.widthPixels, 216);
var emojiKeyboardView = new AGEmojiKeyboardView();
emojiKeyboardView.frame = keyboardRect;
emojiKeyboardView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
emojiKeyboardView.delegate = this;
views.textInput.ios.inputView = emojiKeyboardView;
где платформа — это просто require("platform");
, а views.textInput
— это представление, для которого мне нужно установить для inputView значение AGEmojiKeyboardView.
Я действительно не понимаю, где я ошибся. Все, что появляется, — это серая клавиатура без содержимого.
РЕДАКТИРОВАТЬ:
Я изменил код js на следующий:
var keyboardRect = CGRectMake(0, 0, uiView.view.frame.size.width, 216);
var emojiKeyboardView = new AGEmojiKeyboardView(keyboardRect, uiView);
emojiKeyboardView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
emojiKeyboardView.delegate = uiView;
views.textInput.ios.inputView = emojiKeyboardView;
где uiView — это просто page.ios, и сейчас что-то вроде бы происходит, но все еще не соответствует ожидаемому результату. Выбрасывается исключение, а именно следующее: -[UIViewControllerImpl emojiKeyboardView:imageForSelectedCategory:]: unrecognized selector sent to instance 0x7e6bff60