当用户点击iOS上的状态栏时,我想对多行TextInput进行“滚动到顶部”操作。 TextInput在屏幕上具有最大比例,因此上下文相当笔直。
<TextInput multiline={true} scrollsToTop={true} />
但是,RCTMultilineTextInputView
具有backedTextInputView
作为子视图,而道具不会传递到子视图。 (It's hardcoded为NO
)
我有什么办法可以通过这个道具?或者,对于这种情况是否有更好的实现方法?
答案 0 :(得分:1)
我通过类别添加了其他属性scrollsToTop
。
// RCTMultilineTextInputView+ScrollsToTopAdditions.h
#import "RCTText/RCTMultilineTextInputViewManager.h"
#import <React/RCTViewManager.h>
NS_ASSUME_NONNULL_BEGIN
@interface RCTMultilineTextInputViewManager (ScrollsToTopAdditions)
@end
NS_ASSUME_NONNULL_END
// RCTMultilineTextInputViewManager+ScrollsToTopAdditions.m
#import "RCTMultilineTextInputViewManager+ScrollsToTopAdditions.h"
@implementation RCTMultilineTextInputViewManager (ScrollsToTopAdditions)
#if !TARGET_OS_TV
RCT_REMAP_VIEW_PROPERTY(scrollsToTop, backedTextInputView.scrollsToTop, BOOL)
#endif
@end