2016-05-10 41 views

回答

3

在iOS中,不可能將製表視圖保留在頂部。你可以用同樣的方式使用。 SegmentedBar。我給你舉個例子:

主page.xml

<Page xmlns="http://schemas.nativescript.org/tns.xsd" navigatingTo="navigatingTo"> 
    <StackLayout> 
    <SegmentedBar selectedIndex="{{ selectedIndex }}"> 
     <SegmentedBar.items> 
      <SegmentedBarItem title="First" /> 
      <SegmentedBarItem title="Second" /> 
     </SegmentedBar.items> 
    </SegmentedBar> 
    <StackLayout visibility="{{ isItemVisible }}" > 
     <Label text="Tab1" textWrap="true" /> 
    </StackLayout> 
    <StackLayout visibility="{{ isItemVisibleSecond }}"> 
     <Label text="Tab2" textWrap="true" /> 
    </StackLayout> 
    </StackLayout> 
</Page> 

主page.js

var observable_1 = require("data/observable"); // Event handler for Page "navigatingTo" event attached in main-page.xml function navigatingTo(args) { 
    // Get the event sender 
    var page = args.object; 
    var observable = new observable_1.Observable(); 
    observable.set("selectedIndex", 0); 
    observable.set("isItemVisible", "visible"); 
    observable.set("isItemVisibleSecond", "collapsed"); 
    observable.addEventListener(observable_1.Observable.propertyChangeEvent, function (pcd) { 
     console.log(pcd.eventName.toString() + " " + pcd.propertyName.toString() + " " + pcd.value.toString()); 
     if (pcd.propertyName.toString() == 'selectedIndex') { 
      if (pcd.value.toString() == 0) { 
       observable.set("isItemVisible", "visible"); 
       observable.set("isItemVisibleSecond", "collapsed"); 
      } 
      else { 
       observable.set("isItemVisible", "collapsed"); 
       observable.set("isItemVisibleSecond", "visible"); 
      } 
     } 
    }); 
    page.bindingContext = observable; 
} 
exports.navigatingTo = navigatingTo;