ActivityIndicator CSS color support fixed

This commit is contained in:
Vladimir Enchev
2015-10-30 16:30:52 +02:00
parent 53afae4fcd
commit 716ea68035
2 changed files with 40 additions and 0 deletions

View File

@ -444,6 +444,16 @@ export class TextViewStyler implements definition.stylers.Styler {
}
export class ActivityIndicatorStyler implements definition.stylers.Styler {
private static setColorProperty(view: view.View, newValue: any) {
var bar = <android.widget.ProgressBar>view._nativeView;
bar.getIndeterminateDrawable().setColorFilter(newValue, android.graphics.PorterDuff.Mode.SRC_IN);
}
private static resetColorProperty(view: view.View, nativeValue: number) {
var bar = <android.widget.ProgressBar>view._nativeView;
bar.getIndeterminateDrawable().clearColorFilter();
}
//Visibility methods
public static setActivityIndicatorVisibilityProperty(view: view.View, newValue: any) {
ActivityIndicatorStyler.setIndicatorVisibility((<any>view).busy, newValue, view._nativeView);
@ -463,6 +473,10 @@ export class ActivityIndicatorStyler implements definition.stylers.Styler {
}
public static registerHandlers() {
style.registerHandler(style.colorProperty, new stylersCommon.StylePropertyChangedHandler(
ActivityIndicatorStyler.setColorProperty,
ActivityIndicatorStyler.resetColorProperty), "ActivityIndicator");
style.registerHandler(style.visibilityProperty, new stylersCommon.StylePropertyChangedHandler(
ActivityIndicatorStyler.setActivityIndicatorVisibilityProperty,
ActivityIndicatorStyler.resetActivityIndicatorVisibilityProperty), "ActivityIndicator");

View File

@ -499,6 +499,31 @@ export class SegmentedBarStyler implements definition.stylers.Styler {
}
}
export class ActivityIndicatorStyler implements definition.stylers.Styler {
//Text color methods
private static setColorProperty(view: view.View, newValue: any) {
var bar = <UIActivityIndicatorView>view.ios;
bar.color = newValue;
}
private static resetColorProperty(view: view.View, nativeValue: any) {
var bar = <UIActivityIndicatorView>view.ios;
bar.color = nativeValue;
}
private static getNativeColorValue(view: view.View): any {
var bar = <UIActivityIndicatorView>view.ios;
return bar.color;
}
public static registerHandlers() {
style.registerHandler(style.colorProperty, new stylersCommon.StylePropertyChangedHandler(
ActivityIndicatorStyler.setColorProperty,
ActivityIndicatorStyler.resetColorProperty,
ActivityIndicatorStyler.getNativeColorValue), "ActivityIndicator");
}
}
export class ProgressStyler implements definition.stylers.Styler {
//Text color methods
private static setColorProperty(view: view.View, newValue: any) {
@ -774,4 +799,5 @@ export function _registerDefaultStylers() {
ProgressStyler.registerHandlers();
SwitchStyler.registerHandlers();
TextFieldStyler.registerHandlers();
ActivityIndicatorStyler.registerHandlers();
}