package com.example.ex_0713;
import androidx.activity.result.ActivityResult;
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
EditText txt_id, txt_pw;
Button btn_login;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txt_id = findViewById(R.id.txt_id);
txt_pw = findViewById(R.id.txt_pw);
btn_login = findViewById(R.id.btn_login);
// 로그인 버튼 클릭시 id와 pw값 가져오기!
btn_login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String id = txt_id.getText().toString();
String pw = txt_pw.getText().toString();
// id : smhrd
// pw : 123
if (id.equals("smhrd") && pw.equals("123")){
// 회원이 맞습니다!
// MainActivity2로 화면 전환!
// + ~~님 환영합니다 라는 id 띄워주기 위해 id값 화면 전환!
Intent intent = new Intent(getApplicationContext(), MainActivity2.class);
intent.putExtra("id",id);
intent.putExtra("pw",pw);
mainLauncher.launch(intent);
}else{
Toast.makeText(getApplicationContext(), "로그인 실패", Toast.LENGTH_SHORT).show();
}
}
});
}
// 결과를 돌려받을수 있는 메소드 생성하기
ActivityResultLauncher<Intent> mainLauncher = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
new ActivityResultCallback<ActivityResult>() {
@Override
public void onActivityResult(ActivityResult result) {
if (result.getResultCode() == RESULT_OK){
Toast.makeText(getApplicationContext(),"성공", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getApplicationContext(),"실패", Toast.LENGTH_SHORT).show();
}
}
}
);
}
package com.example.ex_0713;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
public class MainActivity2 extends AppCompatActivity {
// TextView 객체 선언
TextView txt_id2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
// 2. TextView id값 찾아오기
txt_id2 = findViewById(R.id.txt_id2);
// 3. 넘어온 Intent로 부터 Intent값을 가져오기!
// - id값 꺼내 오기
String id = getIntent().getStringExtra("id");
// 4. TextView에 가져온 id값 띄우기 ex) "~~님 환영합니다"
txt_id2.setText(id+"님 환영합니다");
// 양방향으로 원래 화면에 돌아갔을 경우
// 통신에 대한 성공값을 띄울 값 전달하기!
setResult(RESULT_OK);
}
}
'안드로이드' 카테고리의 다른 글
데이터 나열 및 삭제 (0) | 2022.07.13 |
---|---|
Adapter View (0) | 2022.07.13 |
텍스트 입력시 화면전환2 (양방향) (0) | 2022.07.13 |
텍스트 입력시 화면 전환 (0) | 2022.07.12 |
안드로이드 프로그래밍(Activity & Internet) (0) | 2022.07.12 |