본문 바로가기

전체 글

(56)
Infinity 의 함정 주의(Arithmetic Exception 으로 확인 불가 경우) 양수와 음수가 반복되는 배열에서 양수가 묶여있는 연속된 부분배열을 찾는 로직을 구상했다. 그런데 서버에서 배열을 받아오는 것 까지는 완료였고 아무리 코드를 봐도 정상작동해야했지만 뜻대로 작동하지 않았다. 결과값을 모두 프린트해보니 "Infinity" 라는 출력이 눈에 띄었고 잠시 후 눈치챘다. rps 를 구하기 위해 [ 1 / (pulse width * 주기) ] 식이었는데 pulse width 에 0이 들어있는 경우가 있던 것이다. (물론 이 0도 내가 임의적으로 넣었다.. 왜 그랬니) 여기서 궁금한 점은 두 개였다. 1. 왜 0으로 나눴는데 나누기를 zero 로 했다면서 Arithmetic Exception 이 뜨지 않았는가? 2. Infinity 는 정수와 비교연산자로 비교했을 때 더 크다고 평가되..
VBA 엑셀 사용방법 / 기초 문법 정리 연구과제를 하다가 기존에 있는 수식으로는 한계를 느꼈다. 딱 이런 생각이 들었다. "아 코드였으면 진작 반복문으로 끝냈는데" "..? 할 수 있잖아?" 엑셀에서도 함수를 직접 만들 수 있다는 걸 주워들었었다. 그래서 바로 실행. 1. 개발도구 진입 - 여기서 Visual Basic 을 실행 2. 코딩준비 - 파일\Sheet(사용자 지정 이름) 이런식으로 패키지가 있다. - Sheet 에서 우클릭 -> 삽입 -> 모듈 - 여기까지 하면 코딩할 수 있는 창이 나온다. - 왼쪽에 경로를 잘 보면 파일에 Sheet말고 지금 새로 만든 모듈이 추가로 등록되었음을 알 수 있다. 3. 특정 매개변수를 받고 지역변수와 반복문 등으로 로직을 진행 후 값을 반환하는 함수 만들기 - 코딩 예제입니다. *변수 선언 Dim 변..
[Android/java] 2개 이상 뷰를 RecyclerView 에 보여주기(3개) Android 를 다루기 시작한 초창기에는 RecyclerView 에 하나의 아이템만으로도 감지덕지이지만, 시간이 지날수록 다양한 UI 설계와 광고 노출 등으로 두 개 이상의 뷰를 하나의 RecyclerView 에 적용할 일이 생긴다. 1. xml 코드 구현 - 단순 RecyclerView 만 있는 모습. androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_wid..
[Android] Expandable RecyclerView 만들기(펼쳐지는 리스트) 공지사항이 들어가는 앱을 만들 일이 생겼는데 뷰를 위아래로 갈라서 내용을 아래에 띄워 주는 것 보다 카카오톡 공지사항 처럼 화살표를 누르면 내용이 펼쳐지도록 하는 것이 훨씬 깔끔하다는 걸 체감하게 됐다. 하지만 지금까지 펼쳐지는 리스트는 만들어 본 적이 없어서 서치를 했다. 간단한 결과물은 아래와 같다. 그리고 코드다. Activity 의 xml 에는 RecyclerView 만 덩그러니 있다. 아래는 RecyclerView 의 각 아이템을 담당하는 xml 이다. 자세히 보면 제목만 뜨는 ViewGroup 아래에 LinearLayout 으로 펼칠 그룹을 하나 더 만들어두고, Visibility 를 GONE 으로 설정했다. Activiyt.java 도 마찬가지로 어댑터 셋팅 밖에 없고, 핵심은 어댑터이다. ..
Android "AppCompatActivity" not found 해결 오랜만에 실행하는 프로젝트를 안드로이드 스튜디오로 켜보니 AppCompatActivity 와 Firebase 의 import 했던 패키지들이 모두 빨간색이었다. 그래들에도 분명 넣고 싱크했었는데 뭐지 해서 찾아보니 AndroidProjects 에서 프로젝트 파일 -> 아래에서 ".idea" 를 "librares"로 바꾼 뒤 안드로이드 스튜디오를 재실행하면 된다. 정말 식겁했다... 이게 의존성의 문제인가...
Windows10 에서 VirtualBox 로 mac OS 실행하기 정리 순서 1. VirtualBox 설치 2. VirtualBox Extension Platform 설치 3. OS 버전 이미지 파일 다운로드 4. 머신 설정 5. 윈도우 설정 6. amd cpu 추가 설정 7. 확인 ** virtualbox supr3hardenedwinrespawn 5 verr_invalid_name 해결 다음글 : VirtualBox 의 macOS 에서 XCode 실행 및 앱 개발 1. VirtualBox 설치 구글에 검색해서 https://www.virtualbox.org/wiki/Downloads 이 사이트로 들어갈 수 있을 것이다. 버전은 글을 보는 시점별로 다르겠지만 "VirtualBox [버전] Platform packages" 에서 "windows hosts" 다운로드 그 밑의..
Android loading 화면 만들기(ProgressBar) 원래는 로딩화면을 프래그먼트로 만들었었다. 그래서 어디서나 이 프래그먼트를 붙이고 테마만 적용하면 되도록 해두려고 했는데 디자인을 찾아보니 다이얼로그 형태가 더 깔끔해보였다. 하지만 ProgressDialog 는 SDK 26 버전부터 Deprecated되었다. (어째 찾는 것 마다 Deprecated 돼서 한 번 더 찾는 것 같다 ㅋㅋㅋㅋ AsyncTask....ProgressDialog...startActivityForResult... 크흠 착각이겠지...) 문서를 보니 ProgressBar 를 쓰라고 한다. 영상과 문서를 참고해서 아래와 같이 만들었다. 1. layout.xml 코드 ProgressBar 에 Duration을 넣고 Drawable 을 세팅해준 것이 끝이다. 2. Drawable.xml..
ActivityResultLauncher 로 MultiplePermissions 하기(다중 권한 요청) 처음으로 권한요청을 했을 때는 startActivityForResult() 를 하고 오버라이드 된 메서드에서 콜백만 처리하면, 해당 Activity 가 실행될 때 자동으로 진행되어 편했다. 그런데 많은 용량을 전달해야 할 때 증발해버리는 일이 생겨서 이러한 결과를 아예 따로 분리하는 작업이 있었고 결과적으로 위 메서드가 Deprecated, ActivityResultContracts가 생기게 됐다. 일단 다중권한 코드 먼저 보고 설명한다. 그대로 따라 해도 되고 조금 변형해도 된다. 1. 요청할 권한 문자열 리스트로 만들기 private String[] permissions = new String[] { Manifest.permission.READ_CONTACTS }; 권한들은 Manifest.permi..