Подтвердить что ты не робот

EditText не может быть разрешен для типа

Я определил макет в XML файле в папке "res" моего проекта Android. Элемент "EditText" выглядит так:

  <EditText android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:numeric="integer|decimal"></EditText>

В моем файле класса в моем проекте андроида у меня есть следующее:

public void doCalculation(View view) {
        String firstNo = ((EditText) findViewById(R.id.editText1)).getText().toString();
        String secondNo = ((EditText) findViewById(R.id.editText2)).getText().toString(); 
        String operator = ((Spinner) findViewById(R.id.spinner1)).getSelectedItem().toString();
        callWebService(firstNo, secondNo, operator );
}

К сожалению, первые 2 назначения в моем методе выше показывают ошибку в eclipse с указанием

EditText cannot be resolved to a type

Я не знаю, как это исправить. Я использую android 2.3.3 API 10. Любая помощь будет оценена по достоинству. Благодаря

4b9b3361

Ответ 1

Вам нужно импортировать класс EditText, поэтому он известен, используя следующую строку в начале вашего файла .java:

import android.widget.EditText;


Обратите внимание, что в большинстве случаев Eclipse может вам очень помочь: у него есть функция Организовать импорт, которая добавит необходимые строки import:

  • Меню > Source > Organize Imports
  • Или используйте Ctrl + Shift + O

Ответ 2

Вы пытались добавить это вручную?

import android.widget.EditText;

Также проверьте наличие ошибок в консоли и журнале ошибок. Обычно с такими очевидными причинами может быть и другое.

Если импорт не работает, попробуйте закрыть и снова открыть проект.

Ответ 3

Если вы попытались импортировать файл android.widget.EditText и не пытались очистить свой проект в Project → Clean... и попробуйте щелкнуть правой кнопкой мыши на вашем проекте, выберите инструменты Android, затем исправьте проект свойства. Надеюсь, что это поможет.

Ответ 4

Если ни один из других ответов не работает, вы всегда можете сделать это:

EditText txt1 = (EditText)findViewById(R.id.editText1);
EditText txt2 = (EditText)findViewById(R.id.editText2);

String firstNo = txt1.getText().toString();
String secondNo = txt2.getText().toString();

Ответ 5

Проверьте импорт.

Чтобы получить текст из EditText, попробуйте получить значение TextView. Это может сработать.

   String firstNo = ((TextView) findViewById(R.id.editText1)).getText().toString();
            String secondNo = ((TextView) findViewById(R.id.editText2)).getText().toString(); 

Ответ 6

Выше вашего класса просто импортируйте:

import android.widget.EditText;