2016-03-11 3 views
0

Я использую кросс-платформенную структуру NativeScript 1.5, и я пытаюсь показать меню редактирования в TextView, когда он находится в фокусе. В этом случае с прошивкой, я пытался создать вещь под названием UIMenuController так:Показать меню редактирования (копирование/вставка/выбор) в TextView при фокусировке()

var menu = UIMenuController.sharedMenuController(); console.log(menu);

Система распечатана, что меню является объектом UIMenuController. После этого я хочу, чтобы меню редактирования появилось сразу после того, как курсор мигает на текстовом изображении, поэтому:

textview.focus(); menu.menuVisible = true; Однако ничего не произошло. Я что-то делаю неправильно? Или лучше ли это сделать? Любые комментарии очень ценятся.

ответ

0

Update мой точный код

XML:

<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="pageLoaded"> 
    <StackLayout> 
    <Button text="Menu" tap="menu" /> 
    <TextField id="te" text="Hi this is a test of the emergency system. panic now."/> 
    </StackLayout> 
</Page> 

JS:

var page; 
exports.pageLoaded = function(args) { 
    page = args.object; 
}; 

exports.menu = function() { 
    var menu = UIMenuController.sharedMenuController(); 
    var te = page.getViewById('te'); 
    te.focus(); 
    menu.setTargetRectInView(page._nativeView.frame, te.ios); 
    menu.setMenuVisibleAnimated(true, true); 
} 

Хорошо, главный вопрос вы должны установить цель изначально; без цели он не знает, где отобразить меню, по-видимому. В моих тестах, потому что я сначала щелкнул в поле для ввода данных; меню получило цель, с которой работал setMenuVisibileAnimated. Но если вы не «коснетесь» в поле, он, по-видимому, не получит целевой прямоугольник. Поэтому, рассказывая, где он должен отображаться; оно работает.

+0

Спасибо за помощь, но почему-то это не работает для меня. Текстовое изображение должно быть сфокусировано программно, и меню редактирования появляется сразу после этого, пользователю не нужно долгое нажатие на TextView. Используете ли вы версию 1.6.2? –

Смежные вопросы