Summary:
@public
Setting the line height with the help of Android-provided StaticLayout is incorrect. A
simple example app will display the following when `setLineSpacing(50.f, 0.f)`
is set: {F62987699}. You'll notice that the height of the first line is a few
pixels shorter than the other lines.
So we use a custom LineHeightSpan instead, which needs to be applied to the text
itself, and no height-related attributes need to be set on the TextView itself.

Reviewed By: lexs

Differential Revision: D3751097
This commit is contained in:
Andrei Coman 2016-08-25 02:28:48 -07:00 коммит произвёл Ahmed El-Helw
Родитель 977660ed4b
Коммит 9734210f39
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -129,7 +129,7 @@ public class RCTTextInput extends RCTVirtualText implements AndroidView, CSSNode
super.onCollectExtraUpdates(uiViewOperationQueue);
if (mJsEventCount != UNSET) {
ReactTextUpdate reactTextUpdate =
new ReactTextUpdate(getText(), mJsEventCount, false, getPadding(), UNSET);
new ReactTextUpdate(getText(), mJsEventCount, false, getPadding(), Float.NaN, UNSET);
// TODO: the Float.NaN should be replaced with the real line height see D3592781
uiViewOperationQueue.enqueueUpdateExtraData(getReactTag(), reactTextUpdate);
}