mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-08 22:42:05 +08:00
Fixed <TextInput>.onContentSizeChange on Android
Summary: Previously <TextInput>'s onContentSizeChange event fires very rearly, usually just once after initial layout. This diff fixed that. I also considered to a bunch of another things to get the native notification, but I found that overriding `onTextChanged` is the most reliable, easy and effitient way to implement this. I tried/considered: * onLayout (does not fire) * OnPreDrawListener (fires to often) * OnGlobalLayoutListener (does not fire) * OnLayoutChangeListener (does not fire) * isLayoutRequested (too hacky) (I also fixed the <AutoExpandingTextInput> demo to illustrate the fix.) And just heads up, we will remove `contentSize` info from `onChange` event very soon. GH issue: https://github.com/facebook/react-native/issues/11692 Reviewed By: achen1 Differential Revision: D5132589 fbshipit-source-id: e7edbd8dc5ae891a6f4a87b51d9450b8c6ce4a1e
This commit is contained in:
committed by
Facebook Github Bot
parent
864c9f5248
commit
35393524a9
@@ -629,6 +629,10 @@ public class ReactEditText extends EditText {
|
||||
listener.onTextChanged(s, start, before, count);
|
||||
}
|
||||
}
|
||||
|
||||
if (mContentSizeWatcher != null) {
|
||||
mContentSizeWatcher.onLayout();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user