我正在使用NativeScript应用程序,并且已经设置了ListView元素来容纳动态生成的TextField元素。当我开始在iOS上输入ListView的Textfield元素之一时,它将立即关闭键盘。
此行为仅在iOS上发生,而不在应用程序的Android版本上发生。我在NativeScript Vue应用程序中找到了一篇有关iOS发生的此类问题的论坛帖子,但是我不确定如何使用他们的工作来帮助我使用Angular。
https://github.com/nativescript-vue/nativescript-vue/issues/334
component.html
<StackLayout formArrayName="ingredients" row="5" colSpan="3">
<ListView height="100" [items]="form.get('ingredients').value">
<ng-template
let-ingredient="item"
let-i="index"
>
<StackLayout>
<TextField
hint="Add Ingredient"
width="300"
[formControlName]="i"
></TextField>
</StackLayout>
</ng-template>
</ListView>
</StackLayout>
component.ts
ngOnInit() {
this.form = new FormGroup({
name: new FormControl(null, {updateOn: 'blur'}),
description: new FormControl(null, {updateOn: 'blur'}),
ingredients: new FormArray([new FormControl(null)]),
steps: new FormArray([new FormControl(null)]),
imageNames: new FormArray([])
});
}
onAddIngredient() {
const control = new FormControl(null);
(<FormArray>this.form.get('ingredients')).push(control);
}