Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 프로그래밍언어패러다임
- 결함테스팅검증테스팅차이
- 균일비용탐색
- 언덕오르기탐색
- 방통대
- 소프트웨어공학
- 비전공자
- 정보처리산업기사
- 정처기
- 결함테스팅
- 개발자
- 공부하는직장인
- 한국방송통신대학교
- 모바일앱프로그래밍
- A* 알고리즘
- 프로그래밍패러다임
- 컴퓨터과학과
- 린개발론
- kiss원칙
- 수제비
- 정처기준비
- 검증테스팅
- 컴퓨터과학개론
- 린소프트웨어개발론
- 소프트웨어테스트
- 정의
- 정보처리기사
- 프로그래밍
- 시험공부
- 테스팅원리
Archives
- Today
- Total
우와테크
안드로이드 스튜디오 android studio에서 alert창 띄우기와 this 관련 error 오류 해결 본문
java-androidStudio
안드로이드 스튜디오 android studio에서 alert창 띄우기와 this 관련 error 오류 해결
uwaTech 2022. 2. 10. 14:15alert을 번역하면 알리다. 의식하게 하다. 라는 뜻을 가진다.
모바일에서 alert창을 띄운다는 것은 보고 있는 A 화면에서 B 화면으로 화면을 바꾸지 않고 작은 포스트잇처럼 창을 띄워서 정보를 표현하는 것을 말한다.
우와는 버튼을 눌렀을 때 반응 하는지 안하는지를 확인하고자 alert창을 띄우는 기능을 넣는다.
다음 과정을 거친다.
1. 버튼 UI를 만든다.
2. 버튼에 리스너를 정의한다.
3. 리스너에 alert창을 띄울 수 있게 기능을 정의한다.
버튼 UI를 만든다. [activity_main.xml]
<Button
android:id="@+id/buttonAdd"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
버튼을 만들어준다.
여기서 id를 적어주면 java 소스에서 이벤트를 정의할 수 있다.
버튼에 리스너를 정의한다.[MainActivtity.java]
리스너에 alert창을 띄울 수 있게 기능을 정의한다. [MainActivtity.java]
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnAdd = (Button)findViewById(R.id.buttonAdd);
btnAdd.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("알림창 제목");
alert.setMessage("alert창 보입니까???");
AlertDialog dialog = alert.create();
dialog.show();
}
});
}
onCreate 안에 buttonAdd를 연결해서 setOnClickListener를 정의해준다.
onClick 안에 AlertDialog를 정의한다.
간단하다..
UI를 만들때 어떤 걸 클릭이벤트를 줄 것인지 미리 잡아놓고 가는 것이 빼먹지 않고 기능 구현을 할 수 있는 한가지 방법이다.
끝.하려고 했는데 매번 놓치는 게 있다.
바로 this...
저렇게 돌리면 this에서 오류가 생긴다
'Builder(android.content.Context)' in 'androidx.appcompat.app.AlertDialog.Builder' cannot be applied to '(anonymous android.view.View.OnClickListener)'
this가 뭘 가르키는지 못찾는 거다.
이럴땐 정확하게 알려줘야 한다.
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
이렇게 MainActivity를 가리키라고 알려줘야 오류가 사라진다.
이 기본적인 기능은 자주쓰기 때문에 공통코드에 담고, 재사용해서 쓰는것을 추천한다.
여기까지 해서 진짜 끝.
2022.01.04
'java-androidStudio' 카테고리의 다른 글
안드로이드 스튜디오 android studio 앞자리 숫자 0 넣기. (0) | 2022.02.22 |
---|---|
android Studio 안드로이드 스튜디오 Get 통신해서 ListView 조회 (0) | 2022.02.10 |
androidStudio 안드로이드스튜디오 AppcompatActivity 오류 Error (0) | 2022.02.04 |
Android Studio 안드로이드 스튜디오 TextView에서 double -> String 형 변환해서 값 받아오기 (0) | 2022.02.03 |
android studio 안드로이드 스튜디오 textView 긴글에 ... 표시하기 (0) | 2022.01.19 |