일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- rxjava disposable
- 서비스 vs 쓰레드
- 클래스
- 안드로이드 라이선스 종류
- 안드로이드 라이선스
- 안드로이드 os 구조
- 객체
- ANR이란
- jvm 작동 원리
- 안드로이드 레트로핏 crud
- Rxjava Observable
- 스택 큐 차이
- 멤버변수
- 안드로이드 유닛 테스트
- rxjava cold observable
- jvm이란
- 2022 플러터 안드로이드 스튜디오
- 2022 플러터 설치
- 안드로이드 유닛테스트란
- 서비스 쓰레드 차이
- 플러터 설치 2022
- android retrofit login
- rxjava hot observable
- 안드로이드 유닛 테스트 예시
- 스택 자바 코드
- 안드로이드 레트로핏 사용법
- android ar 개발
- 자바 다형성
- ar vr 차이
- 큐 자바 코드
- Today
- Total
목록Android (402)
나만을 위한 블로그
이전에 세로 스크롤 기능을 구현할 때 LazyColumn을 사용한 예시를 포스팅한 적이 있다. https://onlyfor-me-blog.tistory.com/511 [Android Compose] LazyColumn이란? "게으른 기둥" 정도로 번역되는 LazyColumn은 무엇일까? 안드로이드 디벨로퍼에선 아래와 같이 말하고 있다. https://developer.android.com/reference/kotlin/androidx/compose/foundation/lazy/package-summary?hl=ko#LazyColumn(and onlyfor-me-blog.tistory.com 이번엔 세로가 아닌 가로로 스크롤할 수 있는 LazyRow에 대해 포스팅한다. 안드로이드 디벨로퍼에서 말하는 Laz..

이번에 안드로이드 스튜디오를 최신 버전으로 업그레이드 했다. 그런데 앱을 실행할 때마다 Run 탭이 자꾸 올라와서 거슬린다. 해결법을 찾아보니 아래처럼 하면 된다. 1. Run > Edit Configurations 클릭 2. 왼쪽 탭의 Android App > app > General 탭 클릭 3. General 탭 안에서 스크롤 밑으로 쭉 내려서 "Activate tool window" 체크해제 이렇게 하면 앱을 빌드할 때마다 Run 탭이 올라오지 않는다.

Compose 기본 레이아웃 3개 중 마지막으로 Box를 알아본다. https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/package-summary#Box(androidx.compose.ui.Modifier,androidx.compose.ui.Alignment,kotlin.Boolean,kotlin.Function1) androidx.compose.foundation.layout | Android Developers androidx.car.app.managers developer.android.com content로 구성할 수 있는 레이아웃이다. Box는 들어오는 제약 조건에 따라 컨텐츠에 맞게 자체 크기를 조..

컴포저블의 기본 표준 레이아웃은 총 3가지 있다. Column Row Box 이 중 Row에 대해 확인한다. Row의 사전적 정의는 아래와 같다. (옆으로 늘어서 있는) 열, 줄 이런 뜻이니 Compose의 Row도 이 뜻처럼 가로로 배치할 때 사용하는 게 아닌가 추측된다. https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/package-summary#row androidx.compose.foundation.layout | Android Developers androidx.car.app.managers developer.android.com 하위 요소를 가로 순서로 배치하는 레이아웃 컴포저블이다. 하위 요소를..
API 결과값을 LiveData로 받은 다음 액티비티 / 프래그먼트에서 이를 관찰하는 처리를 수행하는 로직을 짤 때가 있다. 예를 들어 로그인이라면 로그인 API를 호출해서 결과값을 받고, boolean 값에 따라 화면을 이동할지 에러를 토스트로 띄울지를 결정한다고 가정한다. 아래와 같이 사용하면 로그인 버튼을 연타했을 때 로그인 성공 로그가 처음에는 한 번만 출력되던 것이 연타할수록 점점 그 개수가 늘어나 로그캣 창이 꽉 차 버리는 걸 볼 수 있었다. private fun login(requestDTO: RequestDTO) { binding.isLoading = true viewModel.login(requestDTO) observeResult() } 이렇게 하는 대신, 어차피 뷰모델의 LiveDat..
페이징 라이브러리를 사용하지 않고 리사이클러뷰만으로도 충분히 페이징 처리가 가능하다. 대신 페이징 처리하려면 내가 꼭 알고 있어야 하는 값 2가지가 있다. 백엔드 개발자가 API 안에 넣어서 줄 것이다. 한 번에 몇 개의 데이터를 불러올 건지 몇 번째 페이지를 요청할 건지 편의상 한 번에 불러올 데이터의 양은 limit, 서버에 요청하는 페이지는 page로 쓴다. 형태는 조금씩 차이가 있겠지만 API 응답값을 확인하면 대충 아래와 비슷한 형태일 것이다. { "page": 1, "limit": 20, "totalCount": 1342, "data": ... } 클라이언트가 몇 번째 페이지를 요청했는데, 한 번에 가져갈 데이터는 몇 개고, 총 데이터는 몇 개인지, 요청한 페이지의 데이터는 어떤 것이 있는지 ..

24.07.15) lateinit var, by lazy의 커스텀 게터세터 불가능 확인 사례 추가 두 키워드는 모두 코틀린에서 지연 초기화 시 사용하는 키워드다. 두 키워드를 확인하기 전에 먼저 공통 개념인 지연 초기화부터 확인한다.위키백과에서 설명하는 지연 초기화는 아래와 같다. https://en.wikipedia.org/wiki/Lazy_initialization Lazy initialization - WikipediaFrom Wikipedia, the free encyclopedia In computer programming, lazy initialization is the tactic of delaying the creation of an object, the calculation of a va..

이 포스팅은 아래의 미디엄 포스팅을 바탕으로 작성했다. https://medium.com/@abdennasser.abidi/improve-ui-performance-in-recyclerview-layout-part-1-d14cf1e23016 Improve UI Performance in RecyclerView Layout Part-1 RecyclerView is one of the most commonly used Android UI components. It can be very powerful but unfortunately it sometimes becomes very… medium.com 리사이클러뷰는 한 화면에 보여주기 힘들 정도로 많은 데이터를 표시할 때 유용한 뷰다. 그러나 잘못 사용하면 심..
Hilt를 적용하고 이것저것 환경설정을 해 준 다음에 앱을 빌드하면 아주 가끔 마주칠 수 있는 에러다. 내 경우 이 에러는 액티비티 파일 위에 @AndroidEntryPoint를 써주지 않아서 발생했다. 어노테이션을 써주니 곧바로 해결됐다. @AndroidEntryPoint//

※ 이 방법이 정답이 아니고 다른 방법들이 많으니 찾아보자 2년 전 자바, 코틀린 별 네트워크 연결 상태를 처리하는 방법에 대해 포스팅한 적이 있다. https://onlyfor-me-blog.tistory.com/322 [Android] 네트워크 연결 상태를 확인하는 방법(JAVA + Kotlin) 네트워크 예외처리를 하다 보면 현재 기기에 인터넷이 연결된 상태인지를 확인해야 할 수 있다. 연결된 상태면 다음 로직을 이어서 수행하거나, 연결되지 않은 상태라면 다이얼로그를 띄워서 onlyfor-me-blog.tistory.com 그러나 여기서 사용하는 코드가 구식인 것도 있고, Flow, LiveData를 사용해 네트워크 연결 상태를 확인하는 포스팅을 미디엄에서 봐서 새로 포스팅하려고 한다. 내가 본 미..