2017-08-30 12 views
0

現在のページから同じページにナビゲートしてスライドのアニメーションを取得する方法、現在はフレームモジュールを使用して同じページに移動するとアニメーションが表示されないだけで、現在のページのコンテンツが更新されます。同じページへのNativescriptのナビゲーション

答えて

2

私はあなたのシナリオをテストしました。ページ遷移は、別のページに対して行われたのと同じ方法で現在のページにナビゲートしている間、期待どおりに実行されるべきです。 サンプルコードを添付しています。プロジェクトで XML

<Page xmlns="http://schemas.nativescript.org/tns.xsd" navigatingTo="navigatingTo" class="page"> 

    <Page.actionBar> 
     <ActionBar title="My App" icon="" class="action-bar"> 
     </ActionBar> 
    </Page.actionBar> 

    <StackLayout class="p-20"> 
     <Label text="Tap the button" class="h1 text-center"/> 
     <Button text="TAP" tap="{{ onTap }}" class="btn btn-primary btn-active"/> 
     <Label text="{{ message }}" class="h2 text-center" textWrap="true"/> 
     <Button text="Navigate" tap="onTap2" class="btn btn-primary btn-active"/> 
    </StackLayout> 
</Page> 

活字体

import { EventData } from 'data/observable'; 
import { Page } from 'ui/page'; 
import { HelloWorldModel } from './main-view-model'; 
import {topmost} from "ui/frame" 

export function navigatingTo(args: EventData) { 

    let page = <Page>args.object; 


    page.bindingContext = new HelloWorldModel(); 
} 

export function onTap2(args){ 
    var navigationEntry = { 
     moduleName: "main-page", 
     animated: true, 
     clearHistory:true, 
     transition: { 
      name: "slide", 
      duration: 380, 
      curve: "easeIn" 
     } 
    }; 
    topmost().navigate(navigationEntry); 
} 

、私はまた、アプリの歴史の中でナビゲーションを節約防止する、clearHistoryを使用しています。

+0

上記のタイスクリプトファイルはmain-page.tsですか?はいの場合は、スライドのアニメーションを表示しますか? –

+0

確かに上記のコードはmain-page.tsファイルのもので、移動中に遷移すると予想どおりに動作します –

+0

えええええええええええええええええええええええええええええええええええええええええええとおめでとうございますか? –

関連する問題