我想在swift 3中使用RxSwift实现自动完成文本字段。
我在java中有这个代码并且它运行良好,但我不知道用RxSwift实现swift 3。 我在rxSwift中搜索了TextChange,但我找不到任何东西!
这是我的代码。
RxTextView.textChanges(mEtAddress)
.map(CharSequence::toString)
.debounce(100, TimeUnit.MILLISECONDS)
.filter(s -> !TextUtils.isEmpty(s))
.compose(bindUntilEvent(FragmentEvent.STOP))
.flatMap(q -> mReactiveLocationProvider.getPlaceAutocompletePredictions(
q, new LatLngBounds(
new LatLng(SOUTHWEST_LATITUDE, SOUTHWEST_LONGITUDE),
new LatLng(NORTHEAST_LATITUDE, NORTHEAST_LONGITUDE)), null))
.subscribe(buffer -> {
List<AutocompleteInfo> infos = new ArrayList<>();
for (AutocompletePrediction prediction : buffer) {
infos.add(new AutocompleteInfo(prediction.getFullText(null).toString(), prediction.getPlaceId()));
}
buffer.release();
mPlaceSuggestionsList.setAdapter(new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, infos));
});
答案 0 :(得分:1)
RxCocoa
的反应式扩展需要UIKit
。
UITextFied已扩展并具有属性rx
。
您可以使用反应性文本属性:
textField.rx.text...