editText



안드로이드 EditText 에디트텍스트 값 남겨두기



다음 액티비티로 넘어갔다가 다시 전 액티비티로 돌아올 때 입력했던 EditText 값을 그대로 놔두고 싶다면

intent 호출 부분에



Intent intent = new Intent(this, SecondActivity.class);

startActivity(intent);

finish();


 finish(); 이걸 지워주면 된다.

액티비티 종료 코드를 없애주면 되는 것이다.

난 예제만 보고 따라하느라 그냥 썼다가 값이 안 남길래 삽질을 했었다.

알고보니 간단한 거였다.. 





뭔가 특별한게 있을 줄 알았는데 별 거 없었다..


그냥 텍스트 뷰에서 하는 것 처럼 xml 에서


<EditText

android:text="텍스트"

/>


이렇게 해주면 입력칸에 hint가 아닌 진짜 텍스트가 초기상태부터 들어가 있다.






사용자로부터 숫자를 입력 받을때 그 값을 검사하고 싶을때 사용한다.

예를 들면 1부터 5까지만 입력을 받고 싶다면 사용자가 5 보다 큰 수를 입력했을때 

값을 초기화 해버리면서 토스트메세지를 즉시 띄우게 된다.


EditText et=(EditText)findViewById(R.id.num); //해당 에디트텍스트 선언

et.addTextChangedListener(new TextWatcher() {

@Override

public void onTextChanged(CharSequence s, int start, int before, int count) {

// TODO Auto-generated method stub

if(s.toString().length() > 0){ //문자열s의 길이가 0보다 크면

if(Integer.parseInt(s.toString()) > 5){ //문자열s를 int형으로 파싱해서 5보다 크면

et.setText(null);  //에디트텍스트 값을 null로 초기화 해버리고

Toast.makeText(getApplicationContext(), "1부터 5까지만 입력해주세요", Toast.LENGTH_LONG).show();

//토스트메세지를 띄운다.

}

}

}



EditText et=(EditText)findViewById(R.id.num); //해당 에디트텍스트 선언

et.addTextChangedListener(new TextWatcher() {			

@Override

	public void onTextChanged(CharSequence s, int start, int before, int count) {

	// TODO Auto-generated method stub

	if(s.toString().length() > 0){ //문자열s의 길이가 0보다 크면

	if(Integer.parseInt(s.toString()) > 5){ //문자열s를 int형으로 파싱해서 5보다 크면

	et.setText(null);  //에디트텍스트 값을 null로 초기화 해버리고

	Toast.makeText(getApplicationContext(), "1부터 5까지만 입력해주세요", Toast.LENGTH_LONG).show();

//토스트메세지를 띄운다.

		}

	}

}


배경이 어두운 색이라면 


에디트텍스트 입력할때 색깔이 비슷해서 알아보기 어렵다. 그래서 색깔을 바꿔줄 필요가 있는데 그 방법은


출처:http://sungho0459.blog.me/40179645913


 <EditText

    android:id="@+id/etRendererTextBody"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:padding="5dp"

    android:textAppearance="?android:attr/textAppearanceMedium"

    android:textColor="#ffFF6000" 

    android:background="#ffffffff"

    android:textCursorDrawable="@null"/>


 <EditText

                                android:id="@+id/etRendererTextBody"

                                android:layout_width="fill_parent"

                                android:layout_height="wrap_content"

                                android:padding="5dp"

                                android:textAppearance="?android:attr/textAppearanceMedium"

                                android:textColor="#ffFF6000" 

                                android:background="#ffffffff"

                                android:textCursorDrawable="@null"/>


android:textCursorDrawable속성값을 @null로 주고

android:textColor속성값을 부여하게 되면 textColor와 같은 색깔로 커서가 깜빡이게 됨

[출처] android EditText 커서 색깔|작성자 에몬



커서색깔은 물론 쓰여지는 글씨 색깔도 바뀐다.




+ Recent posts