Я действительно новичок в Nativescript, поэтому простите меня за вопрос о нобе. Я хотел, чтобы в браузере появлялся еще один веб-браузер, поэтому я использовал PeterStaev NativeScript DropDown widget с GridLayout. И стилизовал его.NativeScript - Открыть виджет NativeScript DropDown с другим элементом пользовательского интерфейса
Изображение:
XML:
<GridLayout columns="*,auto" class="drop-down-menu" tap="{{ openDropDown }}">
<dd:DropDown items="{{ items }}" selectedIndex="{{ selectedIndex }}" col="0" class="drop-down" />
<Label text="" textWrap="false" col="1" class="font-awesome" />
</GridLayout>
мой взгляд-модель файл до сих пор:
...
import { DropDown } from 'nativescript-drop-down';
export class RegisterViewModel extends Observable {
...
public openDropDown() {
console.log('I was tapped’); //this works
}
}
мой код фоновым найти файл (.ts), так далеко:
...
import { RegisterViewModel } from '../../viewmodels/register/register-view-model';
export function pageLoaded(args: EventData) {
let page = <Page>args.object;
page.bindingContext = new RegisterViewModel;
}
Я хочу функцию openDropDown
на GridLayout
, чтобы открыть виджет выпадающего списка. То есть вся область GridLayout
должна иметь возможность открыть раскрывающееся меню, включая значок шрифта. Я бы очень признателен за любую помощь с кодом для этого. Или более элегантное решение.
Awesome. Большое спасибо Брэду, это сработало. Я только отредактировал ваш ответ, чтобы показать точный код, который я использовал. – Sam
Не думайте, что 'args.object' в этом случае будет' '', но скорее это 'GridLayout', который вы все равно можете вызвать' getViewById() ', но тип не соответствует этому. Рад, что это сработало, хотя :) –
как я уже сказал, я новичок. :) пожалуйста, продолжайте и отредактируйте код с более правильной версией, для дальнейшего использования. – Sam