728x90
반응형
화면 만들기
- listButton, exitButton 생성
코드 작성
- MainActivity.java
package com.example.tutorial3;
.
.
.
public class MainActivity extends AppCompatActivity {
//리스트 항목 선언
private String[] items = {"망고", "사과", "토마토", "포도", "오렌지"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//리스트 버튼 클릭 시 이벤트 발생
Button listButton = (Button) findViewById(R.id.listButton); //listButton의 값을 받아와 객체로 만듦
//이벤트 추가
listButton.setOnClickListener(new View.OnClickListener(){
@Override
//버튼 클릭 시 함수 처리 선언
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("리스트"); //팝업창 제목
//리스트 안의 내용 클릭 시 이벤트 처리 (해당 인덱스로 토스트 띄우기)
builder.setItems(items, new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialogInterface, int i){
Toast.makeText(getApplicationContext(), items[i], Toast.LENGTH_SHORT).show();
}
});
//다이얼로그 출력
AlertDialog alertDialog = builder.create();
alertDialog.show();
}
});
//종료 버튼 클릭 시 이벤트 발생
Button exitButton = (Button) findViewById(R.id.exitButton);
exitButton.setOnClickListener(new View.OnClickListener(){
@Override
//버튼 클릭 시 함수 처리 선언
public void onClick(View v){
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setMessage("정말로 종료하시겠습니까?"); //빌더에 메시지 설정
builder.setTitle("종료 확인창") //팝업창 제목
.setCancelable(false) //사용자 임의 종료 불가능하게
//Yes 버튼 클릭 시 종료
.setPositiveButton("Yes", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int i){
finish(); //종료
}
})
//No 버튼 클릭 시 취소
.setNegativeButton("No", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int i){
dialog.cancel(); //취소
}
});
AlertDialog alert = builder.create();
alert.setTitle("종료 확인창");
alert.show();
}
});
}
}
리스트 버튼
- 리스트 버튼을 누르면 선언했던 리스트 항목들이 나오고, 항목을 누르게 되면 하단에 해당 항목의 인덱스 값이 뜬다.
종료 버튼
728x90
반응형