1. Scoped Storage란? 구글 플레이스토어에 앱을 업로드 하기 위해서는 Target SDK 30 이상을 맞춰야하는 이슈가 생겼다. SDK 30 이상부터는 기존 접근 권한 과는 다르게 파일에 접근해야 하는 이슈가 생겼는데 다음과 같다. (1) API Levels SDK 28 이하 WRITE_EXTERNAL_STORAGE READ_EXTERNAL_STORAGE MANAGE_EXTERNAL_STORAGE SDK 32 이하 READ_EXTERNAL_STORAGE SDK 33 이상 READ_MEDIA_IMAGES READ_MEDIA_VIDEO READ_MEDIA_AUDIO (2) Permission 요청 SDK 28이하 에서는 권한 요청을 모두 해야 하고, 유저로부터 승인을 받아야 한다. 하지만 "Sc..
🎈문제 https://www.acmicpc.net/problem/10869 💬설명 Print에 두 Int 변수값을 /해주고 결과값을 int에 넣으면 소수점 뒷자리가 잘린다. %는 나누고 남은 나머지 값을 나타낸다. ⌨️ CODE import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sn = new Scanner(System.in); int A = sn.nextInt(); int B = sn.nextInt(); System.out.println(A+B); System.out.println(A-B); System.out.println(A*B); System.out.println(A/B); Sy..
1. MVC Pattern 이란? 주로 UI관련된 복잡한 앱에서 많이 사용된다. 즉 View의 업데이트가 주가 될 때 사용된다고 보면 된다. 각 요소의 분리된 코드로 Controller 에서 입력을 받아 각 Model과 View를 업데이트 해준다. 즉 MainActivity에서 입력받아 컨트롤러로 이동하고 그 다음 구조가 하위의 다음 그림과 같다. (1) 예시1 Model 모델 : 데이터와 로직 담당, 서버에서 데이터를 가져오는 공간 View 뷰 : 사용자 인터페이스를 표시, 모델의 상태를 UX로 표시 Controller 컨트롤러 : 엑티비티를 통해 입력받은 값을 뷰나 모델에 데이터를 전달해준다. (2) 예시2 사용자 Action이 controller로 들어온다 Controller는 Action 에 맞는..
scaleType 이미지의 크기를 ImageView 영역에 어떻게 맞출지에 대한 속성 //이부분 MATRIX = 원본 크기 그대로 보여줌 (왼쪽상단 정렬) CENTER = 원본 크기 그대로 보여줌 (가운데 정렬) CENTER_CROP = View 영역에 공백이 있으면 채워서 보여줌(비율유지) CENTER_INSIDE = View 영역을 벗어나면 맞춰서 보여줌(비율유지) FIT_START = View 영역에 맞게 보여줌 (왼쪽상단 정렬, 비율유지) FIT_CENTER = View 영역에 맞게 보여줌 (가운데 정렬, 비율유지) FIT_END = View 영역에 맞게 보여줌 (왼쪽하단 정렬, 비율유지) FIT_XY = View 영역을 가득 채워서 보여줌(비율유지 안함) → 사진의 크기가 일정하지 않은 관계로 ..
1. ScaffoldScaffold는 Jetpack Compose에서 머티리얼 디자인의 기본 레이아웃 구조를 제공하는 컴포저블 함수이다. Scaffold를 사용하면 상단바(TopBar), 하단바(BottomBar), 플로팅 액션 버튼(FloatingActionButton), 스낵바(Snackbar) 등을 쉽게 배치할 수 있다. Scaffold 함수 주요 파라미터:topBar: 상단바를 정의하는 컴포저블bottomBar: 하단바를 정의하는 컴포저블floatingActionButton: 플로팅 액션 버튼을 정의하는 컴포저블snackbarHost: 스낵바를 호스트하는 컴포저블content: Scaffold의 주요 콘텐츠를 정의하는 컴포저블 CODEimport android.os.Bundle import and..