Dialog의 Edit Text clear 안되는 현상 해결

Kim Nahyeong·2021년 11월 26일
0
post-thumbnail

이런 입고 다이얼로그에서 입고(positiveInButtonClick)을 했을 때 수량 EditText가 setText로 클리어되지 않는 결과가 발생했다.
그리고 그걸 팀원분께서 해결해주셔서 해결법을 작성해보기.

해결법

<android.widget.EditText
	android:freezesText="false"

EditText의 속성에 freezesText를 false로 설정해주고

val positiveInButtonClick = { dialogInterface: DialogInterface, i: Int ->
            itemSizeString = itemSize.text.toString()
            Log.d("Item Size", itemSizeString)
            if(itemSizeString.equals("") || itemSizeString == null){
                Toast.makeText(activity, "수량을 입력해주세요", Toast.LENGTH_SHORT).show()
                dialogInterface.dismiss()
            } else {
                storageInsert(itemNameString, customerNumString, storeNumString, locationNumString, itemNumString, itemSizeString, jwt)
                itemNameString = NO_SEARCH
                storNameString = NO_SEARCH
            }
            itemSize.setText(null)
            itemSizeString = itemSize.text.toString()
        }

긍정적인 버튼 클릭 후에 초기화를 해줄 것이기 때문에 이러한 함수를 작성하였다.

itemSize가 EditText의 id이다.
이걸 불러와서 작업을 모두 끝낸 후에 setText(null)로 초기화를 해주고,
다시 EditText의 값을 넣은 변수에 다시 값을 넣어주면? 된다.

고찰

왜 되는지 모르겠다... 어이없음 진짜 한 4~5시간 고생했는데 음...
아무래도 버퍼문제 아니면 컴파일러 문제 때문인 것 같다고 결론.

0개의 댓글