我對Nativescript非常陌生,所以請原諒我的noob問題。 我希望我的下拉菜單有更多的瀏覽器,所以我使用PeterStaev的 NativeScript DropDown widget和GridLayout。並設計它。NativeScript - 使用另一個UI元素打開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;
}
我希望GridLayout
上的openDropDown
功能打開下拉小部件。 也就是說,整個GridLayout
區域應該能夠打開下拉菜單,包括font-icon。 我真的很感激任何幫助完成這個代碼。 或更優雅的解決方案。
太棒了。非常感謝布拉德,這工作。我只編輯了你的答案,以顯示我使用的確切代碼。 – Sam
不要認爲在這種情況下'args.object'是'Page',而是'GridLayout',你仍然可以調用'getViewById()',但是類型不正確。很高興它的工作雖然:) –
就像我說的,我是新的。 :)請繼續並使用更正確的版本編輯代碼,以備將來參考。 – Sam