반응형
액티비티 생성시에 액티비티에 에딧텍스트가 있으면 포커스가 에딧텍스트로 이동해 버린다. 에딧 텍스트가 포커스를 받았으니 키보드가 열릴 것이다. 이것이 기본 동작이다. 에딧텍스트가 맨 앞의 컴포넌트라면 별 상관 없겠지만 긴 화면의 중간 어디 쯤에 있는 컴포넌트라면 의도와는 다르게 로딩하자마자 스크롤까지 되어 버린다.
이런 때에는 다음의 소스를 적용할 수 있다. 에딧텍스트가 포커스를 받게 된 후에야 키보드가 펼쳐질 것이다.
eText = (EditText) findViewById(R.id.e_text);
if (eText !=null) {
eText.setText(this.txtValue);
eText.setInputType(0);
eText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
eText.setInputType(1);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(eText, 0);
}
});
}
반응형
'프로그래밍 > Android' 카테고리의 다른 글
Better 9-patch Tool : 앱개발자를 위한 전문가용 나인 패치 제작 도구 (2) | 2011.11.30 |
---|---|
안드로이드 앱에 애드몹 붙이기 (0) | 2011.11.15 |
액티비티의 라이프 사이클 (0) | 2011.10.11 |
안드로이드 에뮬레이터 단축키 (0) | 2011.10.02 |
T 스토어 판매를 중지하며.. (2) | 2011.08.23 |