Очистить текст в EditText при вводе

Я пытаюсь установить и onclicklistener, чтобы при щелчке по элементу edittext он очистил его текущее содержимое. Здесь что-то не так? Когда я компилирую этот код, я получаю принудительное завершение работы и ActivityManager: Не удается отправить кусок DDM 4d505251: ошибка обработчика не определена.

public class Project extends Activity implements OnClickListener {
    /** Called when the activity is first created. */
    EditText editText = (EditText)findViewById(R.id.editText1);
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


        editText.setOnClickListener(this);

        setContentView(R.layout.main);

    }

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        editText.setText("");
    }
}

Ответ 1

Сначала вам нужно вызвать setContentView(R.layout.main), а затем все остальные инициализации.

Пожалуйста, попробуйте ниже код.

public class Trackfolio extends Activity implements OnClickListener {
    /** Called when the activity is first created. */
    public EditText editText;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        editText = (EditText) findViewById(R.id.editText1);
        editText.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        editText.getText().clear(); //or you can use editText.setText("");
    }
}

Ответ 2

Также вы можете использовать код ниже

editText.getText().clear();

Ответ 3

просто используйте атрибут android:hint в вашем EditText. Этот текст появляется, когда поле пусто и не сфокусировано, но исчезает при выборе поля EditText.

Ответ 4

Мы можем очистить данные EditText двумя способами

Первый параметр EditText пуст, как показано ниже строки

editext.setText("");

Вторая очистка данных EditText, подобных этой

editText.getText().clear();

Я предлагаю второй способ

Ответ 5

Ваш код должен быть:

    public class Project extends Activity implements OnClickListener {
            /** Called when the activity is first created. */
            EditText editText;
            @Override
            public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);            

                setContentView(R.layout.main);
                editText = (EditText)findViewById(R.id.editText1);
                editText.setOnClickListener(this);            
            }

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                if(v == editText) {
                    editText.setText("");
                }
            }
        }

Ответ 6

public EditText editField;
public Button clear = null;
@Override
public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
    setContentView(R.layout.text_layout);
   this. editField = (EditText)findViewById(R.id.userName);
this.clear = (Button) findViewById(R.id.clear_button);  
this.editField.setOnClickListener(this);
this.clear.setOnClickListener(this);
@Override
public void onClick(View v) {

    // TODO Auto-generated method stub
if(v.getId()==R.id.clear_button){
//setText will remove all text that is written by someone
    editField.setText("");
    }
}

Ответ 7

Очень просто очистить значения editText.when u нажмите кнопку, а затем следуйте 1 строковому коду.

Внутри кнопки или где угодно хотите. Используйте только этот

editText.setText("");   

Ответ 8

package com.example.sampleproject;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;

public class SampleProject extends Activity {
    EditText mSearchpeople;
    Button mCancel , msearchclose;
    ImageView mprofile, mContact, mcalender, mConnection, mGroup , mFollowup , msetting , mAddacard;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.dashboard);
        mSearchpeople = (EditText)findViewById(R.id.editText1);
        mCancel = (Button)findViewById(R.id.button2);
        msearchclose = (Button)findViewById(R.id.button1);
        mprofile = (ImageView)findViewById(R.id.imageView1);
        mContact = (ImageView)findViewById(R.id.imageView2);
        mcalender = (ImageView)findViewById(R.id.imageView3);
        mConnection = (ImageView)findViewById(R.id.imageView4);
        mGroup = (ImageView)findViewById(R.id.imageView5);
        mFollowup = (ImageView)findViewById(R.id.imageView6);
        msetting = (ImageView)findViewById(R.id.imageView7);
        mAddacard = (ImageView)findViewById(R.id.imageView8);
    }
    @Override
    protected void onResume() {
        // TODO Auto-generated method stub
        super.onResume();
        mCancel.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                mSearchpeople.clearFocus();

            }
        });
    }


}

Ответ 9

Я не знаю, какие ошибки я совершил при реализации вышеупомянутых решений, потому что они не увенчались успехом для меня

txtDeck.setOnFocusChangeListener(new OnFocusChangeListener() {
    @Override       
    public void onFocusChange(View v, boolean hasFocus) {
        txtDeck.setText("");
    }
});

Это работает для меня,

Ответ 10

//Очистить При нажатии кнопки "Очистить"

firstName = (EditText) findViewById (R.id.firstName);

    clear = (Button) findViewById(R.id.clearsearchSubmit);

    clear.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if (v.getId() == R.id.clearsearchSubmit);
            firstName.setText("");
        }
    });

Это поможет очистить неверные ключевые слова, которые вы набрали, вместо того, чтобы снова и снова нажимать назад, вы можете просто нажать кнопку, чтобы очистить все. Я работал у меня. Надеюсь, что это поможет

Ответ 11

final EditText childItem = (EditText) convertView.findViewById(R.id.child_item);
childItem.setHint(cellData);

childItem.setOnFocusChangeListener(new View.OnFocusChangeListener() {
    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        //Log.d("NNN", "Has focus " + hasFocus);
        if (hasFocus) {
            Toast.makeText(ctx.getApplicationContext(), "got the focus", Toast.LENGTH_LONG).show();
        } else {
            Toast.makeText(ctx.getApplicationContext(),
            "loss the focus", Toast.LENGTH_SHORT).show();
        }
        return;
    });

Ответ 12

установив пустую строку, вы можете очистить свой edittext

    editext.setText("");

Ответ 13

Вы можете использовать атрибут android: hint в вашем EditText также из кода:

editText.setHint(CharSequence hint / int resid);

Тогда вам не нужен onClickListener или аналогичный. Но учтите, что значение подсказки не будет передано. EditText останется пустым. В этом случае вы можете установить свой editText со значением по умолчанию:

if(editText.getText().toString().equals("")) { 
...use your default value instead of the editText... }