태그 보관물: android-edittext

android-edittext

Android에서 EditText 비활성화 프로그램에는 사용자에게 쓰기 권한이 아닌 읽기 권한

내 응용 프로그램에는 사용자에게 쓰기 권한이 아닌 읽기 권한 만있는 EditText가 있습니다.

코드에서 설정했습니다 android:enabled="false".

EditText의 배경이 어둡게 바뀌었지만 클릭하면 키보드가 나타나고 텍스트를 변경할 수 있습니다.

EditText를 비활성화하려면 무엇을 설정해야합니까?



답변

나는 올바른 것이 설정 될 것이라고 믿는다 android:editable="false".

받는 내 링크 지점의 속성 이유를 궁금해한다면 TextView, 당신은 대답이 때문에 EditText상속에서 TextView:

EditText는 TextView에 대한 얇은 비니어로 편집 가능하도록 자체 구성됩니다.

업데이트 :
아래 의견에서 언급했듯이 editable( API 레벨 3 이후 ) 더 이상 사용되지 않습니다 . 대신 inputType(값과 함께 none) 를 사용해야합니다 .


답변

사용 EditText.setFocusable(false) 하지 않도록 설정 편집에
EditText.setFocusableInTouchMode(true)편집 할 수 있도록;


답변

다음 방법을 시도해 볼 수 있습니다.

 private void disableEditText(EditText editText) {
    editText.setFocusable(false);
    editText.setEnabled(false);
    editText.setCursorVisible(false);
    editText.setKeyListener(null);
    editText.setBackgroundColor(Color.TRANSPARENT);
 }

활성화 된 EditText :

비활성화 된 EditText :

그것은 나를 위해 일하고 그것이 당신을 도울 수 있기를 바랍니다.


답변

이것을 사용하여 사용자 입력을 비활성화하십시오

android:focusable="false"

android : editable = “false” 이 메소드는 더 이상 사용되지 않습니다.


답변

edit disable을 EditText위해 focusable OR 을 사용할 수 있다고 생각 enable하지만

  1. android:enabled=...또는 사용editText.setEnabled(...)

    또한 텍스트 색상 을 회색으로 변경 합니다 EditText.
    클릭하면 효과가 없습니다

  2. android:focusable=...또는 editText.setFocusable(false)– 사용editText.setFocusableInTouchMode(true)

    그것은 변경되지 않습니다 의 텍스트 컬러 EditText
    가 강조 클릭하면을 EditText몇 밀리 초 약에 대한 결론을

산출


답변

으로는 android:editable="false"depricated.You가 InputType 사용할 수 있습니다 TYPE_NULL을 글고 치기에

이처럼 사용하십시오 :

editText.setInputType(InputType.TYPE_NULL);

답변

대로 android:editable="false"에서 사용되지 않는xml

android:enabled="false"간단하게 사용하십시오 . 왜 더 많은 코드를 사용합니까?

원하는 경우 java class프로그래밍 방식으로 사용할 수도 있습니다

 editText.setEnabled(false);