Intereting Posts
NotifyDataSetChanged vs setAdapter CollapsingToolbarLayout crash на 4.4 устройствах (java.lang.IllegalArgumentException: радиус должен быть> 0) Android: скрыть ActionBar, сохранить вкладки Android: добавление окна не удалось / android.os.TransactionTooLargeException на устройствах Samsung Загрузка высоких изображений из url в щелях, предотвращающих загрузку всего изображения в плунжер Как использовать собственный шрифт с помощью WebView Java.lang.RuntimeException: Произошла ошибка во время выполнения doInBackground () Как получить значение datepicker в формате даты? Как я могу создавать HTML-страницы, которые автоматически корректируют свои изображения на разные размеры экрана для мобильных устройств? Андроид lolipop уведомление белый пустой круг Android AnalogClock: программный программный интерфейс Как настроить эмулятор Android 4.0+ для работы в качестве планшета? Кнопка Android TimePicker AM / PM не вызывает onTimeChanged ScrollView отсекает верх и оставляет пространство внизу Проблемы с загрузкой изображения с Android на сервер Rails с помощью PaperClip

EditText.setFocusable (ложь); Не может быть установлено в true. : /

Очень странная ситуация, у меня есть этот код, который должен сделать EditText зарегистрированным uneditable, если SpnSelected.equals («Сервис») и снова редактируется, если это что-то еще.

final EditText etAdd = (EditText)dialogAddTextView.findViewById(R.id.etSymb); if ( SpnSelected.equals("Service") ) { etAdd.setFocusable(false); TextView tvInfo = (TextView)dialogAddTextView.findViewById(R.id.tvAddTextInfo); } else { etAdd.setFocusable(true); TextView tvInfo = (TextView)dialogAddTextView.findViewById(R.id.tvAddTextInfo); } 

Это делает его uneditable ok, но он не дает возможности редактировать обратно с помощью etAdd.setFocusable (true);

Любые идеи, что с этим делать? Благодаря! 🙂

Solutions Collecting From Web of "EditText.setFocusable (ложь); Не может быть установлено в true. : /"

Пытаться

 etAdd.setFocusableInTouchMode(true); etAdd.setFocusable(true); 

А не просто

 etAdd.setFocusable(true); 

Это решение сработало для меня:

  EditText test3 = (EditText) findViewById(R.id.edittext); CheckBox check1= (CheckBox) findViewById(R.id.checkBox1); test3.setClickable(false); test3.setEnabled(false); test3.setFocusable(false); check1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(check1.isChecked()){ test3.setText(""); test3.setClickable(false); test3.setEnabled(false); test3.setFocusable(false); } else { test3.setClickable(true); test3.setEnabled(true); test3.setFocusable(true); test3.setFocusableInTouchMode(true); } } }); 

После того, как я установил флажок, edittext отключен.

Я надеюсь, что это поможет кому-то 🙂

Благодаря Bala R в верхней части я смог это сделать. Вот еще один способ сделать это, используя OnItemSelectedListener для spinner и findViewWithTag для поиска элемента:

Сначала сделайте свой EditText, таким образом:

Private EditText textArea;

Затем создайте свой EditText, не забудьте добавить setTag («thisIsTag»).

Для последней пасты это внутри вашего счетчика для управления им (тост для отладки)

 spinner.setOnItemSelectedListener( new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { if (position == 0) { textArea.findViewWithTag("thisIsTag"); textArea.setBackgroundResource(R.drawable.first_background); textArea.setFocusable(false); } else if (position != 0) { textArea.findViewWithTag("thisIsTag"); textArea.setBackgroundResource(R.second_background); textArea.setFocusable(true); textArea.setFocusableInTouchMode(true); Toast toast = Toast.makeText(context, "Spinner2: position=" + position + " id=" + id, Toast.LENGTH_LONG); toast.show(); } } @Override public void onNothingSelected(AdapterView<?> parent) { //Everybody is out there having summer and Im just here writing code } } ); 

Вы должны установить EditText для

 etAdd.setEnabled(false);