메뉴 건너뛰기

조회 수 7035 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

[10.안드로이드 로그인 화면 만들기]

오늘은 그동안 포스팅한 내용을 가지고 로그인 화면을 구현하려 합니다.
첫 번째 액티비티의 버튼을 누르면 새로운 로그인 액티비티가 띄워지고

ID와 PASSWORD를 요구합니다.
각각을 입력한 후에 다시 버튼을 누르면 처음 액티비티로 입력한 값이 전달되게 만들어 보겠습니다.

먼저 첫 번째 액티비티와 두 번째 액티비티 관계는 아래와 같습니다.

01.png



 

앞의 포스팅을 모두 숙지하신 분은 어떻게 구현해야 할지 대충 감이 잡히실거라 믿습니다.

첫 번째 액티비티는 간단하게 버튼하나만 넣어주겠습니다.

두 번째 액티비티도 간단하게 아이디 값과 비밀번호 값을 editText를 통해 얻고 버튼을 눌러 반환할 수 있게 구성해 줍니다.
2.png



3.png



xml부분은 준비가 되었으니 java파일을 수정해 보겠습니다.


이전에 설명했던 것과 같이 버튼을 눌렀을 때 새로운 액티비티를 띄우고 그 액티비티로 부터 데이터를 반환받기 위해서는 startActivityForResult()메소드에 Intent를 담아 보내주면 됩니다.

4.png



그럼 새로운 액티비티가 띄워졌으니 텍스트 editText에 입력되는 ID와 PASSWORD를 java파일에서 데이터로 받아와야겠죠?


방법은 새로운 문자열 변수안에 editText의 입력을 데이터로 불러와 넣어주면 됩니다.


우선 xml파일의 EditText를 데이터로 받아와야 하기 때문에 Java파일에서 객체로 선언해 줍니다.
5.png



findViewById()메소드안에 xml파일에서 지정해준 editText의 ID값을 파라미터로 넣어 불러오는 것입니다.
final은 차후에 onClick()메소드 안에서도 이 인스턴트들이 사용될 예정이기 때문에 추가해 준 것입니다.

이제 버튼을 눌렀을 때 EditText에 입력받은 값을 문자열로 받아오고

그 값을 Intent안에 putExtra()를 사용하여 넣어 준 후에 반환 하겠습니다.
6.png



String id = idText.getText().toString();
String pass = passwordText.getText().toString();

앞에서 선언했던 EditText객체 인스턴트로 부터 getText().toString() 메소드를 이용하여 입력된 값을 문자열로 받아 줍니다.
각각을 String형 변수 id와 pass에 저장해 주고,


 Intent intent = new Intent();
 intent.putExtra("id", id);
 intent.putExtra("pass", pass);

새로운 Intent를 선언하여 그 안에다 각각의 값을 넣어줍니다.

id라는 키값에 위에서 선언한 String변수 id를 넣고

pass라는 키값에 위에서 선언한 String변수 pass를 넣어준 것입니다.​

 setResult(RESULT_OK, intent);

이제 이 인텐트를 반환값으로 다시 돌려준 후에


 finish();
액티비티를 종료합니다.


반환값을 받기위해서는 첫 번째 액티비티에서도 작업을 해줘야 했었죠?
onActivityResult()를 사용하여 받환 값을 받아줍니다.

이 메소드는 마우스 오른쪽을 클릭하여 Generate해서 불러올 수 있었죠?


방법이 생소하신 분께서는 앞에서 포스팅한 Intent와 데이터전달을 먼저 살펴보고 와주세요.
http://blog.naver.com/rkdwnsdud555/220292204654



7.png



 String Id = data.getStringExtra("id");
 String Pass = data.getStringExtra("pass");

인텐트에 담겨온 Id값과 Pass값을 새로운 문자열 변수에 넣어 줍니다.

두 데이터 모두 String값이니 getStringExtra()를 통해 받을 수 있겠군요.

Toast.makeText(getApplicationContext(),"아이디 = " + Id + " 비밀번호 = " + Pass,  Toast.LENGTH_LONG).show();
 그럼 데이터가 잘 전달되었는지 Toast를 이용해 확인해 보겠습니다.


앞에서 포스팅했던 내용만 잘 숙지하셨다면 굉장히 간단하게 구현할 수 있는 코드입니다.


한번 결과를 확인해 보겠습니다
8.png



 9.png


TextEdit에 입력된 id와 password가 정상적으로 반환되었습니다.

 


List of Articles
번호 제목 날짜 조회 수
146 카카오톡 대화내용 가져오기(sqlite3, chat_logs) file 2016.05.26 11762
145 카카오톡 분석하기 (2) - 카카오톡 암호화 함수 찾기 file 2016.05.26 8008
144 카카오톡 분석하기 (1) - sqlite 파해치기 file 2016.05.26 7608
143 안드로이드용 채팅프로그램 클라이언트(java), 서버(c#) 소스 file 2016.05.19 10055
142 네트워크 연결 상태 및 3G/WIFI 연결상태 체크하기 2016.03.18 6213
141 Android Push GCM 프로젝트 앱 적용 하기(2) file 2016.03.18 7860
140 안드로이드] 페이스북 같은 슬라이드 메뉴 만들기 file 2015.12.15 10293
139 Android TIP] strings.xml 에서 특수문자 사용하기 2015.12.15 5698
138 Android] Fragment 내부의adapter에서 startActivity 하기 2015.12.15 5495
137 Android] 안드로이드 홈 디렉토리 알아내기 2015.12.15 5843
136 안드로이드 로그인유지 코드 2015.12.14 7583
135 Android Push GCM 서버 구성 하기(3) file 2015.12.14 5576
134 안드로이드 EditText 필터링 검색 file 2015.12.14 6409
133 안드로이드 EditText 필터링 검색 구현(adapter.getFilter().filter(cs)) file 2015.12.14 7294
132 JAVA JDBC를 사용하여 MySQL과 연동 file 2015.11.20 6900
» 안드로이드 로그인 화면 만들기 file 2015.09.04 7035
130 [안드로이드] 리스트 뷰의 한 항목에 대한 컨텍스트 메뉴 만들기 file 2015.09.03 7381
129 [안드로이드] 빠르게 사용할수 있는 컨텍스트 메뉴 만들기 file 2015.09.03 5731
128 [안드로이드] 팝업메뉴 사용법 file 2015.09.03 7709
127 [안드로이드] 콘텍스트 메뉴 사용예제 file 2015.09.02 6255
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved