Giriş
Sınıfı kullanmak için şu dosya import edilir.
XML
XML'i şuna benzer.
Şöyle yaparız.
Nesne şöyle alınır.
TextWatcher Sınıfı yazısına taşıdım.
getId metodu
XM'deki id alanını verir.Şöyle bir xml olsun.
Şöyle yaparız.
Metini almak için şöyle yaparız.
Örnek ver
postDelayed metodu
Bir kodu belli bir süre sonra çalıştırmak için kullanılır.
Şöyle yaparız.
XML ile şöyle yaparız.
Parametre olarak çok fazla seçenek mevcut.
Artı veya eksi sayı alması için şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız
Elimizde şöyle bir XML olsun
Cursor edittext üzerine gelirse veya giderse çağrılır.
Örnek
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
Tüm metnin altını çizmek için şöyle yaparız.
Şöyle yaparız.
İmleci belirtilen konuma getirir.
Örnek
Şöyle yaparız.
Şöyle de yapılabilir.
Şöyle yaparız.
Şöyle yapılır
İmzası şöyle
Şöyle yaparız.
Örnek TextView için verilmiş ancak EditText içinde çalışır. Kullanılan Font'u atar.
Sınıfı kullanmak için şu dosya import edilir.
import android.widget.EditText;XML
XML'i şuna benzer.
<EditText 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/white"
        android:text="www.google.com"
        />Şöyle yaparız.
<EditText
   android:id="@+id/edtFirstName"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:hint="@string/first_name"
   android:padding="5dp"
   android:textColor="@color/black"
   android:textSize="16sp" />Mantıken çoklu satırlarda daha çok işe yarar.The view should be only big enough to enclose its content .
android:inputType="textMultiLine"Nesne şöyle alınır.
EditText edt = (EditText)findViewById(R.id.editText1);TextWatcher Sınıfı yazısına taşıdım.
getId metodu
XM'deki id alanını verir.Şöyle bir xml olsun.
<EditText
   android:id="@+id/etCustomerNo"String s = getResources().getResourceEntryName(edt.getId());Şöyle yaparız.
ViewGroup.LayoutParams lp = edt.getLayoutParams();
lp.width = 100;
lp.height = 100;
edt.setLayoutParams(lp);Metini almak için şöyle yaparız.
Editable text = edt.getText();Örnek ver
postDelayed metodu
Bir kodu belli bir süre sonra çalıştırmak için kullanılır.
textView.setVisibility(View.VISIBLE);   
textView.postDelayed(new Runnable() {
               public void run() {
               textView.setVisibility(View.INVISIBLE);
              }
         }, 3000);
setBackgroundResource metodu
Arka plana bir resim şöyle atanır.// image as Backgound of textview 
edt.setBackgroundResource(R.drawable.img);Şöyle yaparız.
edt.setEnabled(false);
setDigits metodu
Kabul edileek karakterleri belirtir. XML ile tanımlamak için şöyle yaparız.
Elimizde bir Filter olsun."" dönersek input kabul edilmez, null dönersek kabul edilir.
Şöyle yapılır.Kabul edileek karakterleri belirtir. XML ile tanımlamak için şöyle yaparız.
<EditText
  ........
  android:inputType="textPersonName"
  android:digits="aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyY"
/>Elimizde bir Filter olsun."" dönersek input kabul edilmez, null dönersek kabul edilir.
String blockCharacterSet = "~#^|$%&*!"; //Special characters to block
InputFilter filter = new InputFilter() {
  @Override
  public CharSequence filter(CharSequence source, int start, int end,
     Spanned dest, int dstart, int dend) {
    if (source != null && blockCharacterSet.contains(("" + source))) {
      return "";
    }
    return null;
  }
};edt.setFilters(new InputFilter[] { filter });// setting gravity to "center"
edt.setGravity(Gravity.CENTER);android:paddingLeft = 16dpXML'de şöyle tanımlanır.
<EditText
  ...
  android:layout_gravity="center_horizontal"/>  XML ile şöyle yaparız.
<EditText
 android:hint = "+6281342134"
 andrioid:text="phone number"
/>Parametre olarak çok fazla seçenek mevcut.
Artı veya eksi sayı alması için şöyle yaparız.
edt.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL); //for decimal numbers
edt.setInputType(InputType.TYPE_NUMBER_FLAG_SIGNED); //for positive or negativeedt.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL | 
                 InputType.TYPE_NUMBER_FLAG_SIGNED);<EditText 
...
  android:inputType="textMultiLine"
...
</EditText><EditText
  ...
  android:inputType="text"
/>Şöyle yaparız.
edt.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View view) {
    ...
  }
});Şöyle yaparız.
edt.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  @Override
  public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    ...   
    return false;
    }
});Şöyle yaparız
edt.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  @Override
  public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
    if(i== EditorInfo.IME_ACTION_DONE){
      Toast.makeText(getApplicationContext(),"Done pressed",Toast.LENGTH_SHORT).show();
    }
    return false;
  }
});Elimizde şöyle bir XML olsun
<EditText
  android:id="@+id/editText"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignParentTop="true"
  android:layout_centerHorizontal="true"
  android:ems="10"
  android:imeOptions="actionDone"
  android:inputType="textPassword" />edt.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  @Override
  public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    boolean handled = false;
    if (actionId == EditorInfo.IME_ACTION_DONE) {
      if (v.getText().toString().equals("12345")) {
        ...
      } else {
        ...
        handled = true;
      }
      return handled;
    }
});Cursor edittext üzerine gelirse veya giderse çağrılır.
Örnek
Şöyle yaparız.
edt.setOnFocusChangeListener(new View.OnFocusChangeListener() {
  @Override
  public void onFocusChange(View v, boolean hasFocus) {
    if (hasFocus) {
      ...
    }
    else {
      ...
    }
  }
});Şöyle yaparız.
editText.setOnKeyListener(new OnKeyListener() {                 
  @Override
  public boolean onKey(View v, int keyCode, KeyEvent event) {
    //You can identify which key is pressed
    if(keyCode == KeyEvent.KEYCODE_DEL) {  
        //this is for backspace
    }
    return false;       
  }
});Şöyle yaparız.
edt.setOnTouchListener(new View.OnTouchListener() {
  @Override
  public boolean onTouch(View v, MotionEvent event) {
    ...
    return false;
  };
});Tüm metnin altını çizmek için şöyle yaparız.
edt.setPaintFlags(edt.getPaintFlags()| Paint.UNDERLINE_TEXT_FLAG);Şöyle yaparız.
edt.setRawInputType(Configuration.KEYBOARD_12KEY);edt.setRawInputType(Configuration.KEYBOARD_QWERTY);İmleci belirtilen konuma getirir.
Örnek
Şöyle yaparız.
edt.setSelection(position)edt.setSelection(2);Şöyle de yapılabilir.
Selection.setSelection(edt.getText(), edt.getText().length());Şöyle yaparız.
edt.setText("Updated Text From another Activity");
int position = edt.length();
Editable text = edt.getText();
Selection.setSelection(text, position);<EditText
...
  android:scrollbars="vertical"
...
</EditText>İmzası şöyle
Metin atamak için şöyle yapılabilir.setText(Spannable spannable)
edt.setText("your Text here"); //set default value
edt.setHint("your Text here"); //set hinttxtview.setText(Html.fromHtml("<u>...</u>");Şöyle yaparız.
edt.settextcolor("your color code");Örnek TextView için verilmiş ancak EditText içinde çalışır. Kullanılan Font'u atar.
TextView textView = ...; 
textView.setTypeface(Typeface.createFromAsset(...));Typeface.createFromAsset(context.getAssets(), "fonts/Aclonica.ttf") 
Hiç yorum yok:
Yorum Gönder