alertDialog
-대화 상자를 말하는데 어떤 앱을 실행 시 경고 메세지나 특정한 정보를 알려주기 위한 다이얼로그를 말한다.
handler를 이용해 특정한 시간이 지났을 때, 특정한 버튼을 눌렀을 때 구현하는 기능이다.
이와 같이 확인 버튼을 눌러서 어플을 사용하는데 제약을 걸거나 이벤트를 발생하게 한다.
보통은 확인과 취소버튼으로 이루어져있다.
자신이 원하는 형태로 AlertDialog를 만들 수 있다! 자세한 코드는 아래에서 살펴보자.
AlertDialog builder <----> alertDialog의 관계
builder : 대화상자안에 있는 속성을 정의한다(title이나 버튼 눌렀을 때 나타나는 속성들을 가르킴)
alertDialog : create()함수를 통해 builder에게 전달받아서 생성을 하고 구현하는 로직이다
builder로 정의한 후 msgDlg로 AlertDialog를 만들어 사용한다!!
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn_quit = (Button)findViewById(R.id.btn_quit);
btn_quit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AlertDialog.Builder msgBuilder = new AlertDialog.Builder(MainActivity.this)
.setTitle("어플 종료") //title setting
.setMessage("어플 종료??!") //
.setPositiveButton("끈다", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
finish();
}
})
.setNegativeButton("안끈다", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(getApplicationContext(),"안끌래",Toast.LENGTH_LONG).show();
}
}); // 띄우고자 하는 다이얼로그 속성을 지정해주는 것을 마무리한다
AlertDialog msgDlg = msgBuilder.create(); //속성을 지정한 msgBuilder 객체를 바탕으로 AlertDialog가 생성됨
msgDlg.show();
}
});
}
ListView & Arrayadapter
리스트 뷰는 해당 뷰들을 리스트 형태로 나열하는 방법을 말한다.
ArrayList로 list를 만든 후 Adapter에게 list값들을 전달하여 ListView에 전달한다. 즉 Adapter는 매개체 역할을 한다.
Data -----> Adapter <---- ListView -->(xml)
아래의 그림은 4가지의 List를 만든후 ListView가 클릭됬을 때 해당 position에 따라 출력되는 화면이다.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_view);
final TextView tv_select = (TextView)findViewById(R.id.tv_select);
final ListView listView = (ListView)findViewById(R.id.listView);
final List<String> list = new ArrayList<>();
list.add("사과");
list.add("배");
list.add("딸기");
list.add("감자");
//adapter list관계
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1,list);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
String name = (String) listView.getItemAtPosition(position); //listView안에 있는 position에 위치한 값을 가져옴
tv_select.setText("항목 선택 결과는 "+name+"입니다!!");
//position 값 : 각각의 항목 위치
}
});
}
'대외 활동 > CADI(개발A 보충스터디)' 카테고리의 다른 글
ListView와 RecyclerView 차이! (0) | 2020.12.26 |
---|---|
ListView에 관한 Adapter 5가지 !(Spinner포함) (0) | 2020.12.26 |
Intent 간단한 예제-1 (0) | 2020.12.26 |
intent를 활용한 전화걸기 어플 (0) | 2020.12.26 |
Array & ArrayList 알아보기 (0) | 2020.12.26 |