mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
TabView color and selctedColors
This commit is contained in:
@@ -5,6 +5,7 @@ import proxy = require("ui/core/proxy");
|
||||
import types = require("utils/types");
|
||||
import trace = require("trace");
|
||||
import bindable = require("ui/core/bindable");
|
||||
import color = require("color");
|
||||
|
||||
export var traceCategory = "TabView";
|
||||
|
||||
@@ -56,6 +57,7 @@ export class TabViewItem extends bindable.Bindable implements definition.TabView
|
||||
var TAB_VIEW = "TabView";
|
||||
var ITEMS = "items";
|
||||
var SELECTED_INDEX = "selectedIndex";
|
||||
var SELECTED_COLOR = "selectedColor";
|
||||
|
||||
export module knownCollections {
|
||||
export var items = "items";
|
||||
@@ -74,6 +76,13 @@ var selectedIndexProperty = new dependencyObservable.Property(
|
||||
undefined,
|
||||
dependencyObservable.PropertyMetadataSettings.AffectsLayout));
|
||||
|
||||
var selectedColorProperty = new dependencyObservable.Property(
|
||||
SELECTED_COLOR,
|
||||
TAB_VIEW,
|
||||
new proxy.PropertyMetadata(
|
||||
undefined,
|
||||
dependencyObservable.PropertyMetadataSettings.None));
|
||||
|
||||
(<proxy.PropertyMetadata>selectedIndexProperty.metadata).onSetNativeValue = function (data: dependencyObservable.PropertyChangeData) {
|
||||
var tabView = <TabView>data.object;
|
||||
tabView._onSelectedIndexPropertyChangedSetNativeValue(data);
|
||||
@@ -87,6 +96,7 @@ var selectedIndexProperty = new dependencyObservable.Property(
|
||||
export class TabView extends view.View implements definition.TabView, view.AddArrayFromBuilder {
|
||||
public static itemsProperty = itemsProperty;
|
||||
public static selectedIndexProperty = selectedIndexProperty;
|
||||
public static selectedColorProperty = selectedColorProperty;
|
||||
public static selectedIndexChangedEvent = "selectedIndexChanged";
|
||||
|
||||
public _addArrayFromBuilder(name: string, value: Array<any>) {
|
||||
@@ -159,6 +169,14 @@ export class TabView extends view.View implements definition.TabView, view.AddAr
|
||||
this._setValue(TabView.selectedIndexProperty, value);
|
||||
}
|
||||
|
||||
get selectedColor(): color.Color {
|
||||
return this._getValue(TabView.selectedColorProperty);
|
||||
}
|
||||
set selectedColor(value: color.Color) {
|
||||
this._setValue(TabView.selectedColorProperty,
|
||||
value instanceof color.Color ? value : new color.Color(<any>value));
|
||||
}
|
||||
|
||||
public _onSelectedIndexPropertyChangedSetNativeValue(data: dependencyObservable.PropertyChangeData) {
|
||||
var index = this.selectedIndex;
|
||||
if (types.isUndefined(index)) {
|
||||
@@ -233,4 +251,13 @@ export class TabView extends view.View implements definition.TabView, view.AddAr
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public _getAndroidTabView(): org.nativescript.widgets.TabLayout {
|
||||
// Android specific
|
||||
return undefined;
|
||||
}
|
||||
|
||||
public _updateIOSTabBarColors() {
|
||||
// iOS sepcific
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user