SORU
18 NİSAN 2011, PAZARTESİ


Nasıl birden fazla EditTexts için Tek TextWatcher kullanılır?

Değiştirilen metin tek Textwatcher kullanarak elde etmek için nasıl bir faaliyet içinde 3 EditText kutusu var.

CEVAP
30 Mayıs 2011, PAZARTESİ


Ben sadece bu sorunla karşılaştı. Bir bağımsız değişken bir Görünüm alır TextWatcher iç sınıf bir uygulama oluşturarak çözdüm. Daha sonra, yöntem uygulamasında, sadece Düzenlenebilir hangi yönden geldiğini görmek için açın:

//Declaration
private class GenericTextWatcher implements TextWatcher{

    private View view;
    private GenericTextWatcher(View view) {
        this.view = view;
    }

    public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
    public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}

    public void afterTextChanged(Editable editable) {
        String text = editable.toString();
        switch(view.getId()){
            case R.id.name:
                model.setName(text);
                break;
            case R.id.email:
                model.setEmail(text);
                break;
            case R.id.phone:
                model.setPhone(text);
                break;
        }
    }
}

// Usage:

name = (EditText) findViewById(R.id.name);
name.setText(model.getName());
name.addTextChangedListener(new GenericTextWatcher(name));

email = (EditText) findViewById(R.id.email);
email.setText(model.getEmail());
email.addTextChangedListener(new GenericTextWatcher(email));

phone = (EditText) findViewById(R.id.phone);
phone.setText(model.getPhone());
phone.addTextChangedListener(new GenericTextWatcher(phone));

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 07cadikiz07

    07cadikiz07

    17 EKİM 2007
  • Microsoft Research

    Microsoft Re

    24 EKİM 2008
  • William Sledd

    William Sled

    24 EYLÜL 2006