no image
뒤로가기 버튼을 누를 시 액티비티 재실행
액티비티 A에서 B를 호출(onStartActivityForResult) -> B에서 뒤로가기를 눌러서 A로 돌아옴, 이 때 A 액티비티가 재실행되려면? 액티비티 B에서 '뒤로가기'를 눌렀을 때의 코드를 작성해주어야한다.(onCreate 내부) getOnBackPressedDispatcher().addCallback(this, new OnBackPressedCallback(true) { @Override public void handleOnBackPressed() { // 뒤로가기 제스처 또는 버튼이 눌렸을 때 동작 Intent resultIntent = new Intent(); ..
2025.07.22
버튼 background 드로어블 적용 안될때
매니패스트에서 main_activity의 theme을 style/Theme.Splash 로 바꾸었다. (스플래시 쓰기 위해) 근데 themes.xml을 보면 Theme.Splash의 parent는 Theme.Material3.Light.NoActionBar이다. 일단 이 테마를 써야 할거 같은데 버튼 background가 내가 바꾼대로 변하지 않고 테마 색으로 바뀌어버림. 그래서 아래 코드 app:backgroundTint="@null" 이걸 추가해주고 나니까 background가 내가 바꾼대로 됨.
2025.07.18
no image
NumberPicker
출생년월 설정을 datepicker -> numberpicker로 바꿨다. (datepicker는 년,월,일 모두 한 세트라) activity_birth_setting.xml Palette에 numberPicker가 없어서 xml 코드로 직접 추가했다.numberPicker의 theme, background를 설정해준다. (theme은 아래에 작성)더보기 테두리가 둥글게 만들어지도록 background를 내가 만든 shape 드로어블로 설정해주었다. themes.xml AndroidManifest.xml drawable로 선 만들기shape 드로어블로 ..
2025.07.18
no image
라디오버튼
라디오버튼 중복제거라디오버튼은 라디오그룹 하위에 배치하면 중복이 제거된다.근데 vertical이나 horizontal로 일렬로 배치되어있으면 상관이 없는데 격자식구조로 배치하고 싶을 경우,라디오그룹 내부에 1개 이상의 레이아웃을 넣고 그 밑에 라디오버튼을 넣으면 라디오그룹의 중복제거가 적용되지 않는다. 라디오그룹의 바로 하위에 있어야 적용됨. 이런 경우엔 라디오그룹 밑에 넣지 않고, 그냥 원하는대로 라디오버튼을 배치한 뒤 아래 코드와 같이 작성하면 된다. // 상단 3개 하단 2개 라디오 버튼 중복체크 안되게 설정 RadioButton[] radioButtons = new RadioButton[] { findViewById(R.id.radioBu..
2025.07.16
no image
드로어블 커스텀 했을 때 뜨는 그림자 없애기
위 사진을 보면 상단버튼은 그림자가 없지만 하단 버튼엔 그림자가 진것을 볼 수 있다.위에는 추가로 코드를 넣어준거다. 기본적으로 하단처럼 그림자가 생긴다. 아래와 같이 elevation과 stateListAnimator르 둘다 설정해주면 된다. (하나만 하면 안되는 것을 확인했다.)
2025.07.16
no image
더 앞에 배치하고 싶을 때 : elevation
아래와 같이 특정 아이콘을 위에다 배치하고 싶은데 뒤에 가려질 때.단순히 Component Tree에서 순서만 바꾼다고 해결되지 않음.뒤에 두고 싶은 것의 elevation을 앞에 두고 싶은 elevation보다 낮게 설정해주면 된다. button을 아이콘보다 뒤에 가게 설정해준다. (button은 1, imageView는 10으로 elevation을 설정해준다.)
2025.07.16
no image
클래스 다이어그램 작성 중
포폴을 저번달부터 만들고 있는데 생각보다 진도가 느리다..빡세게 작업해야하는데 중간중간 좀 게을리 해서 그런 것도 있다. 이번엔 Event를 작업하던 중 챗지피티의 도움을 받아서 전체적인 구조를 작업하고 있었는데, 이벤트를 구현하기 위해 9개의 클래스를 추가하고 나니까 너무 헷갈리는 거다.뭐가 무슨 메서드를 참조하고.. 이 클래스가 무슨 역할을 누구에게 하는것인지.. 그래서 명세화 작업을 할지 말지 고민했다. 왜냐면 시간 낭비 같기도 해서 말이다.근데 그걸 안하면 구조 이해하느라 시간이 더 걸릴 거 같은거다. 제대로 해보자 생각이 들어서 draw.io라는 웹페이지를 통해 아래와 같이 만들어봤다. 해놓으니까 생각보다 편리해서 좋았다. 확실히 팀 작업할 때는 이런게 더 중요하겠다는 걸 느꼈다. 만들고 나..
2025.06.13
no image
게임 프로젝트 - 챗지피티 Q&A 이용 (1)
Q. 새로운 페이지를 액티비티와 프래그먼트 중 뭘로 만드는 것이 좋을까?Q. (v->) 람다식은 무엇인가?Q. setInterporlator란?Q. 이미지를 이미지뷰에 넣을 때 원래 크기가 아닌 비율에 맞게 조정하려면?Q. Shuffle() 메서드란?Q. 새로운 클래스를 생성했는데 해당 클래스가 없다고 뜰 때Q. 앱 실행 시 이미지가 보이지 않을 경우 (실행 전에는 보임) Q. 새로운 페이지를 액티비티와 프래그먼트 중 뭘로 만드는 것이 좋을까?A. 액티비티. (페이지 내부의 변경을 프래그먼트로 제작.) Q. (v->) 람다식은 무엇인가?A. 인터페이스에 메서드가 딱 하나 존재할 때 간단하게 쓸 수 있는 문법.더보기 Q. setInterporlator란?A. 애니메이션의 속도 변화를 조절해주는 것...
2025.05.08
no image
도전!24 - 빨간 사각형을 터치해서 움직이기
사족더보기그간 베트남 여행 다녀옴 + 정처기 공부 + SQL 공부(정처기 하는 김에 같이 함) + 백준 티어 올리기를 하느라 안드로이드 스튜디오..는 한동안 안 건들였다. 좀 쉬었다고 또 실력이 확 떨어졌을 것 같은 기분에 다시 하기 싫기도 했다..그래도 해야지 하고 오늘 드디어 다시 시작했는데 챗지피티와 함께 하니 너무 쉽게 성공해서 기분이 좋았다.오늘 안에 안 끝날 줄 알았음. 근데 간단한 문제였다.게다가 정처기 공부하면서 디자인 패턴, 자바 오버라이딩 오버로딩 등에 대해 좀 공부를 했는데 이런 게 꽤 도움이 된 것 같다. 오히려 전보다 남의 코드를 해석하는 속도가 빨라진 듯. 이제 진짜 포폴 좀 만들자. 이력서를 넣어도 포폴이 없으니까 거들떠도 안본다.0️⃣ 실행 결과1️⃣ activity_main..
2025.04.30