我想用NativeScript創建一種類型的sidemenu,但我不知道如何。 如何使用NativeScript創建導航抽屜? 存在任何模塊什麼可以做到這一點?用NativeScript導航抽屜
回答
沒有抽屜現在,但它是在工作AFAIK。
同時,您可以檢查NativeScript的官方回購。 https://github.com/NativeScript/NativeScript/tree/master/apps/TelerikNEXT
檢查TelerikNext應用程序。
我認爲它不可用我認爲你需要創建自己的模塊作爲一個視圖,並做自己的導航(打開,關閉)。
但是開箱即用,我還沒有在他們的文檔中找到任何其他東西。
我嘗試的另一件事是在標題中添加一個按鈕,但我仍然設法更改標題的顏色,所以我認爲您需要等待一些時間才能完成這些簡單的操作。
Ref:我正在開發一個基於Buxfer和NativeScript的演示應用程序。
Telerik今天宣佈Telerik UI for Nativescript作爲插件。 該插件現在包含側面抽屜和數據可視化工具。這是一個商業產品,但是(僅)側面抽屜功能是免費的。
有關詳細信息,請參閱this doc。
下面是如何創建NativeScript 1.3(其中添加了動畫框架)的動畫菜單抽屜一個例子:https://github.com/emiloberg/nativescript-animated-sidebar-menu-example
抽屜就在這裏。看看讓你開始TJ Vantoll的樣板工程...
https://github.com/tjvantoll/nativescript-template-drawer
或者從伊格納西奧·富恩特斯同一模板的打字稿版本...
https://github.com/ignaciofuentes/nativescript-template-drawer-ts
我上傳我的工作代碼。這是Nativescript +角2
drawer.html
<RadSideDrawer [drawerLocation]="currentLocation" [transition]="sideDrawerTransition"tkExampleTitle tkToggleNavButton>
<StackLayout tkDrawerContent class="sideStackLayout">
<StackLayout class="sideTitleStackLayout">
<Label text="Navigation Menu"></Label>
</StackLayout>
<StackLayout class="sideStackLayout">
<Label text="Primary" class="sideLabel sideLightGrayLabel"></Label>
<Label text="Social" class="sideLabel"></Label>
<Label text="Promotions" class="sideLabel"></Label>
<Label text="Labels" class="sideLabel sideLightGrayLabel"></Label>
<Label text="Important" class="sideLabel"></Label>
<Label text="Starred" class="sideLabel"></Label>
<Label text="Sent Mail" class="sideLabel"></Label>
<Label text="Drafts" class="sideLabel"></Label>
</StackLayout>
</StackLayout>
<StackLayout tkMainContent>
<Label [text]="mainContentText" textWrap="true" class="drawerContentText"></Label>
<Button text="OPEN DRAWER" (tap)=openDrawer()></Button>
</StackLayout>
drawer.component.ts
import {Component , OnInit, Input,ElementRef, ViewChild,ChangeDetectionStrategy,ChangeDetectorRef} from "@angular/core";
import { Router } from "@angular/router";
import { Page } from "ui/page";
import {View} from "ui/core/view";
import {Label} from "ui/label";
import {RadSideDrawerComponent, SideDrawerType} from 'nativescript-telerik-ui/sidedrawer/angular';
import {DrawerTransitionBase, SlideInOnTopTransition} from 'nativescript-telerik-ui/sidedrawer';
import * as sideDrawerModule from 'nativescript-telerik-ui/sidedrawer/';
@Component({
selector: "hello",
templateUrl: "shared/hello/app.hello.html",
styleUrls: ["shared/hello/hello.css", "css/app-common.css"],
})
export class HelloComponent implements OnInit{
private _currentNotification: string;
private _sideDrawerTransition: sideDrawerModule.DrawerTransitionBase;
constructor(private _page: Page, private _changeDetectionRef: ChangeDetectorRef) {
this._page.on("loaded", this.onLoaded, this);
}
@ViewChild(RadSideDrawerComponent) public drawerComponent: RadSideDrawerComponent;
private drawer: SideDrawerType;
ngAfterViewInit() {
this.drawer = this.drawerComponent.sideDrawer;
this._changeDetectionRef.detectChanges();
}
ngOnInit() {
}
public onLoaded(args) {
this._sideDrawerTransition = new sideDrawerModule.PushTransition();
}
public get sideDrawerTransition(): sideDrawerModule.DrawerTransitionBase {
return this._sideDrawerTransition;
}
public get currentNotification(): string {
return this._currentNotification;
}
public openDrawer() {
console.log("openDrawer");
this.drawer.showDrawer();
}
public onDrawerOpening() {
console.log("Drawer opening");
this._currentNotification = "Drawer opening";
}
public onDrawerOpened() {
console.log("Drawer opened");
this._currentNotification = "Drawer opened";
}
public onDrawerClosing() {
console.log("Drawer closing");
this._currentNotification = "Drawer closing";
}
public onDrawerClosed() {
console.log("Drawer closed");
this._currentNotification = "Drawer closed";
}
}
不要忘了在全球範圍內app.module進口。
import { SIDEDRAWER_DIRECTIVES } from "nativescript-telerik-ui/sidedrawer/angular";
並在聲明數組添加SIDEDRAWER_DIRECTIVES:下面TS
declarations: [
SIDEDRAWER_DIRECTIVES,
AppComponent,
...navigatableComponents
]
OMG就像一個魅力! – megatxi 2017-01-12 10:17:54
謝謝閃耀 – 2017-01-12 12:08:58
檢查:https://www.nativescript.org/blog/using-cross-platform-native-sidedrawer-component-in-nativescript
他們現在有RadSideDrawer組件 http://docs.telerik.com/devtools/nativescript-ui/Controls/NativeScript/SideDrawer/overview
希望這可以幫助!
請閱讀http://stackoverflow.com/help/how-to-answer,特別是「爲鏈接提供上下文」部分。 – 2017-01-11 16:50:00
- 1. 導航抽屜
- 2. ActionbarSherlock導航抽屜
- 3. Android導航抽屜?
- 4. 從導航抽屜
- 5. Android導航抽屜
- 6. 導航抽屜,ResourceNotFoundException
- 7. 導航抽屜與導航抽屜片段
- 8. 在導航抽屜中導航錯誤?
- 9. 帶導航抽屜的片段導航
- 10. 導航抽屜重疊CollapsingToolbar
- 11. AndroidSlidingUpPanel與抽屜式導航
- 12. 片段導航抽屜
- 13. 添加導航抽屜AppCompatActivity
- 14. 導航抽屜定製
- 15. RelativeLayout導航抽屜裏面
- 16. 登錄+導航抽屜
- 17. 導航抽屜不顯示
- 18. Android - 導航抽屜碎片
- 19. 導航抽屜不工作
- 20. Android碎片導航抽屜
- 21. 處理導航抽屜
- 22. 錯誤抽屜式導航
- 23. 錯誤導航抽屜
- 24. Gmail導航抽屜效果
- 25. 更改導航抽屜
- 26. 難度從導航抽屜
- 27. 導航抽屜和MapFragment
- 28. 導航抽屜不滑動
- 29. 抽屜導航和片段?
- 30. Android Studio 1.4導航抽屜
此外,這裏是一個示例項目:https://github.com/telerik/nativescript-ui-samples – 2015-07-30 07:34:28
Telerik改變了他們的規則,並從一個免費的('nativescript-telerik-ui')和專業版本('nativescript -telerik-ui-pro')轉換爲'nativescript-pro-ui',它可以免費提供所有這些小部件:http://docs.telerik.com/devtools/nativescript-ui/migration – 2017-10-26 06:22:59