1. Toast.
결과화면 :
토스트는 액티비티가 아니므로 한 액티비티에 종속되는 특성이 있다.
Toast.makeText(this, "안녕", Toast.LENGTH_SHORT).show();
대신 첫 매개변수에 컨텍스트가 들어가야 하기 때문에 함수로 따로 만들려면 전역변수로 컨텍스트 변수를 만들어 호출하는 방식을 취해야한다.
public class Test {
public static void callToast(Context context){
Toast.makeText(context, "안녕", Toast.LENGTH_SHORT).show();
}
}
2. SnackBar
화면 아래에 뜨는 작은 액티비티이다.
이것은 토스트처럼 컨텍스트에 종속되는 것이 아니라 뷰에 띄우는 것이기 때문에 뷰를 매개변수로 받는다.
mainview=findViewById(R.id.main_view);
Snackbar.make(mainview,"안녕", BaseTransientBottomBar.LENGTH_LONG).show();
Snackbar.make(getWindow().getDecorView(),"안녕", BaseTransientBottomBar.LENGTH_LONG).show();
mainView는 액티비티의 메인 레이아웃 뷰이고, getDecorView는 화면의 최상단뷰이다.
(mainView에 올릴 경우)
(getDecorView()에 올릴 경우)
3. 선택화면
화면 위에 선택창을 띄운다
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showMessage();
}
});
}
private void showMessage(){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
Log.d(TAG, "showMessage: this : "+this);
builder.setTitle("안내");
builder.setMessage("종료하시겠습니까?");
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setPositiveButton("예", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.d(TAG, "onClick: which : "+which);
String message="예 버튼이 눌렸습니다.";
textView.setText(message);
}
});
builder.setNeutralButton("취소", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.d(TAG, "onClick: which : "+which);
String message="취소 버튼이 눌렸습니다.";
textView.setText(message);
}
});
builder.setNegativeButton("아니요", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.d(TAG, "onClick: which : "+which);
String message="아니오 버튼이 눌렸습니다.";
textView.setText(message);
}
});
AlertDialog dialog=builder.create();
dialog.show();
}
이때 which는 -1(예), -2(아니오), -3(취소)을 가진다.
대화상자 결과화면 :
반응형
'Android' 카테고리의 다른 글
안드로이드 스튜디오, JAVA] 커스텀 리스트뷰(ListView) 만들기 (0) | 2020.07.22 |
---|---|
안드로이드 스튜디오, JAVA] 기본 리스트뷰(ListView) 만들기 (1) | 2020.07.22 |
안드로이드 스튜디오, JAVA] Material Navigation Drawer을 이용하여 네비게이션으로 액티비티 전환 (0) | 2020.07.22 |
안드로이드 스튜디오,JAVA] 액티비티 변경에 따른 스택관리 (0) | 2020.07.22 |
안드로이드 스튜디오, JAVA]Material Design Navigation View에서, onNavigationItemSelected가 인식되지 않을 때 (0) | 2020.07.22 |