@@ -370,15 +370,53 @@ export class View extends ViewCommon {
370370 get [ horizontalAlignmentProperty . native ] ( ) : HorizontalAlignment {
371371 return < HorizontalAlignment > org . nativescript . widgets . ViewHelper . getHorizontalAlignment ( this . nativeView ) ;
372372 }
373- set [ horizontalAlignmentProperty . native ] ( value : HorizontalAlignment ) {
374- org . nativescript . widgets . ViewHelper . setHorizontalAlignment ( this . nativeView , value ) ;
373+ set [ horizontalAlignmentProperty . native ] ( value : HorizontalAlignment ) {
374+ const nativeView = this . nativeView ;
375+ const lp : any = nativeView . getLayoutParams ( ) || new org . nativescript . widgets . CommonLayoutParams ( ) ;
376+ // Set only if params gravity exists.
377+ if ( lp . gravity !== undefined ) {
378+ switch ( value ) {
379+ case "left" :
380+ lp . gravity = android . view . Gravity . LEFT | ( lp . gravity & android . view . Gravity . VERTICAL_GRAVITY_MASK ) ;
381+ break ;
382+ case "center" :
383+ lp . gravity = android . view . Gravity . CENTER_HORIZONTAL | ( lp . gravity & android . view . Gravity . VERTICAL_GRAVITY_MASK ) ;
384+ break ;
385+ case "right" :
386+ lp . gravity = android . view . Gravity . RIGHT | ( lp . gravity & android . view . Gravity . VERTICAL_GRAVITY_MASK ) ;
387+ break ;
388+ case "stretch" :
389+ lp . gravity = android . view . Gravity . FILL_HORIZONTAL | ( lp . gravity & android . view . Gravity . VERTICAL_GRAVITY_MASK ) ;
390+ break ;
391+ }
392+ nativeView . setLayoutParams ( lp ) ;
393+ }
375394 }
376395
377396 get [ verticalAlignmentProperty . native ] ( ) : VerticalAlignment {
378397 return < VerticalAlignment > org . nativescript . widgets . ViewHelper . getVerticalAlignment ( this . nativeView ) ;
379398 }
380399 set [ verticalAlignmentProperty . native ] ( value : VerticalAlignment ) {
381- org . nativescript . widgets . ViewHelper . setVerticalAlignment ( this . nativeView , value ) ;
400+ const nativeView = this . nativeView ;
401+ const lp : any = nativeView . getLayoutParams ( ) || new org . nativescript . widgets . CommonLayoutParams ( ) ;
402+ // Set only if params gravity exists.
403+ if ( lp . gravity !== undefined ) {
404+ switch ( value ) {
405+ case "top" :
406+ lp . gravity = android . view . Gravity . TOP | ( lp . gravity & android . view . Gravity . HORIZONTAL_GRAVITY_MASK ) ;
407+ break ;
408+ case "middle" :
409+ lp . gravity = android . view . Gravity . CENTER_VERTICAL | ( lp . gravity & android . view . Gravity . HORIZONTAL_GRAVITY_MASK ) ;
410+ break ;
411+ case "bottom" :
412+ lp . gravity = android . view . Gravity . BOTTOM | ( lp . gravity & android . view . Gravity . HORIZONTAL_GRAVITY_MASK ) ;
413+ break ;
414+ case "stretch" :
415+ lp . gravity = android . view . Gravity . FILL_VERTICAL | ( lp . gravity & android . view . Gravity . HORIZONTAL_GRAVITY_MASK ) ;
416+ break ;
417+ }
418+ nativeView . setLayoutParams ( lp ) ;
419+ }
382420 }
383421
384422 get [ rotateProperty . native ] ( ) : number {
0 commit comments