ECode RelativeLayoutLayoutParams::ResolveLayoutDirection( /* [in] */ Int32 layoutDirection) { Boolean isLayoutRtl = IsLayoutRtl(); if (isLayoutRtl) { if (mStart != IViewGroupMarginLayoutParams::DEFAULT_RELATIVE) mRight = mStart; if (mEnd != IViewGroupMarginLayoutParams::DEFAULT_RELATIVE) mLeft = mEnd; } else { if (mStart != IViewGroupMarginLayoutParams::DEFAULT_RELATIVE) mLeft = mStart; if (mEnd != IViewGroupMarginLayoutParams::DEFAULT_RELATIVE) mRight = mEnd; } if (HasRelativeRules() && layoutDirection != GetLayoutDirection()) { ResolveRules(layoutDirection); } // This will set the layout direction return ViewGroupMarginLayoutParams::ResolveLayoutDirection(layoutDirection); }
Boolean ShortcutAndWidgetContainer::InvertLayoutHorizontally() { Boolean res; IsLayoutRtl(&res); return mInvertIfRtl && res; }