Android edittext te 2 karekter bilgi girişinden sonra diger edittext e geçmek için yardıncı olabilir misiniz ?

soruldu: 23 Oca '13, 15:15

t3rcal's gravatar image

t3rcal
25224
cevap kabul oranı: 0%

değiştirildi: 24 Oca '13, 04:06

CemIkta's gravatar image

CemIkta ♦
19.9k29125190


Text Listener ile üstesinden gelebilirsin. Örnek amaçlı bir kod buldum işini görecektir.

EditText myTextBox2 = (EditText) findViewById(R.id.myTextBox2);
EditText myTextBox = (EditText) findViewById(R.id.myTextBox);
  myTextBox.addTextChangedListener(new TextWatcher() {

   public void afterTextChanged(Editable s) {
   }

   public void beforeTextChanged(CharSequence s, int start,
     int count, int after) {
   }

   public void onTextChanged(CharSequence s, int start,
     int before, int count) {
     //Burada count ile bir if koşulu yapıp, diğer edittext'i tetiklemen yeterli olacaktır.
    if(count==2){
          //İkinci Edittext 'i aktif et, yazdıgın edittext'i pasif gibi
         myTextBox.setEnabled(false);
         myTextBox2.setEnabled(true);
        }
   }
  });

Kaynak

permanent link

cevaplandı: 23 Oca '13, 15:24

Turgay%20Can's gravatar image

Turgay Can
8.3k63798
cevap kabul oranı: 18%

değiştirildi: 23 Oca '13, 15:25

J2EE'nin dediği tam olarak şu :

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="23dp"
        android:layout_marginTop="20dp"
        android:ems="10" >

        <requestFocus />
    </EditText>

    <EditText
        android:id="@+id/editText2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText1"
        android:layout_below="@+id/editText1"
        android:layout_marginTop="34dp"
        android:ems="10" />

    <EditText
        android:id="@+id/editText3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText2"
        android:layout_below="@+id/editText2"
        android:layout_marginTop="38dp"
        android:ems="10" />

</RelativeLayout>

MainActivity.java

import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.Menu;
import android.widget.EditText;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final EditText et1 = (EditText)findViewById(R.id.editText1);
        final EditText et2 = (EditText)findViewById(R.id.editText2);
        final EditText et3 = (EditText)findViewById(R.id.editText3);

        et1.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                if(et1.getText().length()>=2)
                    et2.requestFocus();

            }

            public void beforeTextChanged(CharSequence s, int start, int count,int after) {}            
            public void afterTextChanged(Editable arg0) {}
        });

        et2.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                if(et2.getText().length()>=2)
                    et3.requestFocus();
            }

            public void beforeTextChanged(CharSequence s, int start, int count, int after) {}           
            public void afterTextChanged(Editable s) {}
        });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}
permanent link

cevaplandı: 23 Oca '13, 15:59

lastarabos's gravatar image

lastarabos
1.8k122742
cevap kabul oranı: 29%

ben yapamadım olmadı sanırım

    final EditText a=(EditText)findViewById(R.id.editText1);
    final EditText b=(EditText)findViewById(R.id.editText2);
    final EditText c=(EditText)findViewById(R.id.editText3);
  1. edit text e iki karakter girdiginde 2. edit texte gitmesini istiyorum 2. edite iki karakter girdigimde 3 edit text gitmesini istiyorum
(23 Oca '13, 15:38) t3rcal t3rcal's gravatar image
1

Yukarıdaki kod istediğini iki Edittext için yapar üçüncüsü için if myTextBox2 için bir listener ekleyip aynı iş kuralını uygularsın.

(23 Oca '13, 15:42) Turgay Can Turgay%20Can's gravatar image

teşekkürler ellerinize saglık çalıştı

(23 Oca '13, 16:12) t3rcal t3rcal's gravatar image

J2EE'nin cevabı doğru olarak işaretle istersen sorun yoksa.

(23 Oca '13, 16:30) lastarabos lastarabos's gravatar image

Oncrate { Timer{ getControl() } } getControl(){ String text=edittext1.gettext().toString(); if(text!=null){ edittext1.setVısıbilty(new View.GOne); editetxt2.setVısiblty(new View.Vısıble); } }İşini gorecektır. Timer sabit oranlı olmalı kısasurelerde calısarak kontrol etmelı.ve en son edittext e gelindiğinde timer zamanı sıfırlanmalıkı timer çalışmasın.

permanent link

cevaplandı: 25 Ara '13, 07:05

Numan's gravatar image

Numan
673101422
cevap kabul oranı: 6%

değiştirildi: 25 Ara '13, 07:07

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×818

Soruldu: 23 Oca '13, 15:15

Görüntüleme: 1,391 kez

Son güncelleme: 25 Ara '13, 07:07

powered by BitNami OSQA