사용자가 텍스트 입력을 삭제할 때를 이해하는 방법은 무엇입니까?

ygzkrmtc

사용자로부터 입력을 받는 위젯이 있습니다. 사용자가 정상적으로 변수를 입력하고 저장 버튼을 누르면 문제가 없습니다. 사용자가 일부 입력을 제공한 후 입력을 삭제하면 내 앱이 중단됩니다. 내 질문은: 사용자가 입력을 삭제하고 내 앱이 이를 올바르게 처리하도록 할 때를 어떻게 이해할 수 있습니까?

Expanded(
                                    child: Container(
                                      decoration: BoxDecoration(
                                        borderRadius: BorderRadius.circular(5),
                                        color: Colors.grey.withOpacity(0.3),
                                      ),
                                      child: TextField(
                                        style: TextStyle(
                                          color: Colors.black,
                                          fontSize: 20,
                                        ),
                                        textAlign: TextAlign.center,
                                        textAlignVertical: TextAlignVertical.center,
                                        onChanged: (value){
                                            setState(() {
                                              _ingredients[index].ingredientAmount=value;
                                              categoryModels[widget.subCategoryId].subCategoryModels[widget.subCategoryCardId].ingredients[index].ingredientAmount=value;
                                              var flag=0;
                                              for(int i=0;i<=_ingredients.length-1;i++){
                                                if(_ingredients[i].ingredientAmount==null){
                                                 flag=-1;
                                                }
                                              }
                                              if(flag==-1){
                                                falseIngredientAmountSelected(context);
                                              }
                                              else{
                                                trueIngredientAmountSelected(context);
                                              }
                                            });
                                        },
                                        decoration: InputDecoration(
                                          border:OutlineInputBorder(
                                            borderRadius: BorderRadius.circular(5),
                                            borderSide: BorderSide(
                                            ),
                                          ),
                                          hintText: "Miktar Girin",
                                          hintStyle: TextStyle(
                                            color: Colors.black,
                                            fontSize: 14,
                                          ),
                                        ),
                                      ),
                                      height: 50,
                                    ),
                                  ),
                                ],
                              ),
                            ),
                          ),
                        );
                      },
                    ),
                  ),
                )
마인드스튜디오

내부에서 onChanged먼저 확인하십시오 if(value.isNotEmpty). false return;value.isNotEmpty반환하는 경우를 넣어 빈 값으로 수행할 모든 작업을 중단할 수 있습니다 . 또한 사용자에게 입력이 비어 있으면 안된다는 메시지를 표시할 수 있습니다.

나는 또한 사용자가 모든 문자가 아니라 텍스트 입력을 완료했을 때만 확인하거나 작업을 수행하도록 onSubmitted또는 onEditingComplete대신 사용하는 것이 좋습니다 onChanged.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

사용자가 React native otp 입력을 사용하여 otp 텍스트 입력에서 텍스트를 삭제할 때 재설정 상태를 추가하는 방법은 무엇입니까?

사용자가 텍스트 영역의 지정된 단어에서 문자를 삭제할 때 버튼을 다시 숨기는 방법은 무엇입니까?

사용자가 텍스트 상자에 입력 할 때 다른 컨트롤을 활성화하고 삭제하거나 텍스트 상자가 비어있는 경우 비활성화하는 방법은 무엇입니까?

사용자가 텍스트를 입력할 때 onTap 제스처를 동적으로 생성하는 방법은 무엇입니까?

사용자가 텍스트 입력없이 Enter 키를 누를 때까지 배열에 문자열을 입력하는 방법은 무엇입니까?

새 사용자가 로그인할 때 텍스트 보기를 변경하는 방법은 무엇입니까?

사용자가 버튼을 탭할 때 입력 된 텍스트 필드를 지우는 방법은 무엇입니까?

입력을 \ n으로 분할하려고 할 때 사용자 입력을 \ n 텍스트 영역에 삽입하는 방법은 무엇입니까?

Puppeteer를 사용하여 입력에서 기존 텍스트를 삭제하는 방법은 무엇입니까?

사용자가 제출을 위해 Shift + Enter를 사용할 때 새 텍스트 영역을 만드는 방법은 무엇입니까?

사용자가 프로그래밍 방식으로 Swift iOS에서 삭제 버튼을 클릭 할 때 한 텍스트 필드에서 다른 텍스트 필드로 커서를 자동으로 이동하는 방법은 무엇입니까?

유형이 텍스트인 입력 필드에 사용자가 숫자를 입력하지 못하도록 제한하는 방법은 무엇입니까?

숫자를 텍스트로 변환 할 때 추가 "수백"을 제거하는 방법은 무엇입니까?

사용자가 이미지를 공유할 때 이미지에 (텍스트 또는 아이콘)을 추가하는 방법은 무엇입니까?

입력 유형 텍스트를 삭제하는 방법은 무엇입니까?

버튼을 클릭할 때 텍스트 상자에 입력한 값을 얻는 방법은 무엇입니까?

사용자가 문자를 입력 할 수 없도록 텍스트 필드 JavaFx에서 문자를 직접 제거하는 방법은 무엇입니까?

TextField에 입력 한 텍스트를 삭제 불가능하게 만드는 방법은 무엇입니까?

ViewModel을 삭제할 때 이벤트를 해제하는 방법은 무엇입니까?

사용자가 입력을 중지 할 때까지 데이터 가져 오기를 지연 / 시작 / 디 바운스하는 방법은 무엇입니까?

텍스트 상자 필드에 암호를 입력할 때까지 모든 버튼을 비활성화하는 가장 좋은 방법은 무엇입니까?

텍스트 입력 값을 추출하고 해당 값을 React에서 제3자 API 데이터를 가져오는 데 사용할 소품으로 자식 구성 요소에 전달하는 방법은 무엇입니까?

IntelliJ UI Designer를 사용할 때 JComboBox에 텍스트를 추가하는 방법은 무엇입니까?

CTE로 일괄 적으로 행을 삭제할 때 변경 내용 추적 컨텍스트를 설정하는 방법은 무엇입니까?

사용자가 URL을 변경할 때만 이벤트를 트리거하는 방법은 무엇입니까?

Python에서 turtle.write를 사용할 때 텍스트를 이동하는 방법은 무엇입니까?

사용자가 editText에 금액을 입력 할 때 $를 추가하는 방법은 무엇입니까?

사용자가 다른 곳을 탭할 때 텍스트 필드에서 첫 번째 응답자를 사임하는 방법은 무엇입니까?

누군가 EOF 문자가 입력될 때까지 텍스트를 반복할 수 있는 방법을 설명할 수 있습니까? 또한 벡터를 사용하는 방법은 무엇입니까?