728x90
반응형
알림창!
헬테이커 스티커 만들때 유용하게 쓰일지도 모르겠다
시작은 언제나 Empty Activity로 프로젝트 생성
이번엔 리스트와 종료 두개의 버튼을 만들고 ID를 할당한다
코드는 역시나 어렴풋이 감만 잡히고 뭔지 잘 모르겟다
package com.example.tutorial3;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
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.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 dialog, int i) {
Toast.makeText(getApplicationContext(), items[i], Toast.LENGTH_SHORT).show();
}
});
AlertDialog alertDialog = builder.create();
alertDialog.show();
}
});
}
}
builder는 아마 이걸 말하는 것 같고
Toast는 이렇게 아래에 뜨는걸 말하는 것 같다
다음은 종료버튼에 관련된 함수를 추가해준다
...
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)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int i) {
finish();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int i) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.setTitle("종료 알림창");
alert.show();
}
});
builder는 아까와 마찬가지로 알림창 전체를 뜻하는 게 맞는것 같다
setCancelable(false)로 뒤로가기를 눌러도 알림창이 꺼지지 않는다
PositiveButton과 NegativeButton은 보통 Yes, No 알림창에 쓰이는 그거다
저 코드가 OnClickListener때문인지 너무 가독성이 좋지 않은것 같다
익숙하지 않아서 그런가
보통 코드를 짤때 저런건 아래에 따로 선언했었으니 조금 불편하다...
그리고 아쉽게도 내가 생각하던 알림창은 아니었기에 캐릭터 선택에나 쓸것 같다
'작업일지 > Andriod' 카테고리의 다른 글
[Android] 아이콘의 흰색 테두리 문제 (0) | 2021.07.28 |
---|---|
Android Studio#4 - 내비게이션 메뉴 바 만들기 (0) | 2021.05.07 |
Android Studio#2 - 계산기 만들기 (0) | 2021.05.07 |
Android Studio#1 - Hello World! (0) | 2021.05.07 |
Android Studio#0 - 설치 (0) | 2021.05.07 |