일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ANR이란
- 객체
- 멤버변수
- rxjava cold observable
- jvm이란
- 안드로이드 유닛 테스트 예시
- 서비스 쓰레드 차이
- rxjava hot observable
- 안드로이드 os 구조
- 안드로이드 레트로핏 사용법
- android ar 개발
- 서비스 vs 쓰레드
- android retrofit login
- Rxjava Observable
- jvm 작동 원리
- 안드로이드 라이선스 종류
- 2022 플러터 설치
- 2022 플러터 안드로이드 스튜디오
- ar vr 차이
- 플러터 설치 2022
- 클래스
- 안드로이드 유닛 테스트
- 스택 자바 코드
- 자바 다형성
- rxjava disposable
- 안드로이드 레트로핏 crud
- 큐 자바 코드
- 안드로이드 라이선스
- 스택 큐 차이
- 안드로이드 유닛테스트란
- Today
- Total
목록Android (402)
나만을 위한 블로그
EditText에서 글자수를 제한할 때는 보통 xml에서 maxLength를 설정하거나 자바 파일의 addTextChangedListener(new TextWatcher(){ ... }) 콜백에서 getText().length()를 통해 설정하곤 한다. 그러나 이 방법들로는 띄어쓰기(공백)를 포함해서 글자수를 제한할 수 없다. 이 때 쓸 수 있는 게 InputFilter라는 것이다. 다 필요없고 자바 파일에 이 코드를 추가하기만 하면 된다. edittext.setFilters(new InputFilter[] { new InputFilter.LengthFilter(10) }); LengthFilter()의 소괄호 안에 숫자를 넣기만 하면 그 숫자 크기만큼 입력할 수 있는 공백 포함 글자수가 제한된다.
리사이클러뷰에 데이터가 없으면 "아직 작성된 글이 없어요" 같은 문장이 나오도록 하고 싶을 때가 있다. 그래서 레이아웃을 만든 뒤 include해서 사용해볼까 생각했는데 좀 더 간단한 방법이 있어서 기록하려고 포스팅한다. 먼저 클래스를 하나 만들어준다. import android.content.Context; import android.util.AttributeSet; import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.recyclerview.widget.RecyclerView; public class RecyclerViewEmptySupport ext..
스크롤뷰 안에 Constraint Layout을 넣고, 반응형으로 만들기 위해 width와 height를 각각 0dp로 두고 percent 값을 조정해줘도 뷰가 보이지 않는 때가 있다. 이 때 설정해야 하는 건 부모 레이아웃(스크롤뷰)의 속성에 fillViewport를 true로 명시해주는 것이다. fillViewport는 원래 내용물의 크기가 화면 크기를 넘어도 내용물의 크기만큼 뷰가 확장되도록 설정할 수 있는 속성인데, 신기하게 퍼센트 값을 적용할 때도 true로 설정하지 않으면 퍼센트 값이 얼마던 안 보이던 뷰가 곧바로 보이는 걸 확인할 수 있었다. 퍼센트 값을 정하는 건 부모 레이아웃이 리니어 등 레이아웃인 경우에는 전부 적용됐었지만 스크롤뷰에는 써본 적이 없어서 헤맸지만 저 속성을 적용하는 것으..

※ 이 포스팅에서 다루는 카카오 SDK는 v2 버전이다. 이번 포스팅에선 코틀린으로 카카오 로그인을 어떻게 구현하는지에 대해 포스팅하려고 한다. 주의할 것은 프로젝트에 FCM까지 붙일 거라면 프로젝트 이름 중간에 example이란 글자가 들어가면 안된다.아마 프로젝트명을 확인하면 com.example.app 형태일텐데, 중간의 example을 다른 글자로 바꿔야 한다.카카오 로그인을 적용하고 나서 바꾸려면 좀 귀찮은 게 아니니 FCM을 붙일거라면 미리 바꿔주자. 바꾸는 것도 간단해서 시간도 얼마 안 걸린다.FCM을 붙일 게 아니라면 그냥 아래로 쭉 읽어 내려가면 된다. 먼저 카카오 디벨로퍼에 앱을 등록해야 한다. 아래 링크를 통해 카카오 디벨로퍼로 이동해 로그인한다. developers.kakao.com..

예전에 자바로 된 같은 내용의 포스팅을 작성한 적이 있다. onlyfor-me-blog.tistory.com/197 [Android] TabLayout, ViewPager, Fragment를 활용해서 화면 넘기기 구현하기 이번 글에선 탭 레이아웃과 뷰페이저, 프래그먼트를 써서 좌우로 화면 넘기기 예제를 구현할 것이다. 먼저 앱 수준 gradle에다가 의존성을 하나 추가해준다. implementation 'com.google.android.material:materi onlyfor-me-blog.tistory.com 이번엔 코틀린으로 위 내용을 어떻게 구현하는지에 대해 포스팅하려고 한다. 역시 아래 의존성은 꼭 넣어야 한다. 뷰페이저, 탭 레이아웃, 리사이클러뷰 등의 머티리얼 디자인 요소들을 한방에 바로 ..
먼저 액션바, 상태바는 각각 아래를 의미한다. 액션바 : 앱 이름이 출력되는 가로줄 상태바 : 시계, 카톡 알림 등이 출력되는 가로줄 앱을 만들다 보면 이곳들의 색을 바꾸고 싶을 때가 있다. 색을 바꾸려면 두 곳의 색깔을 표시하는 부분에 입력된 값을 다른 값으로 바꿔주면 된다. 먼저 내가 원하는 색깔을 res/values/colors.xml에 입력해야 한다. 필수 작업은 아니지만 한번 저장해두면 다른 곳의 색을 바꿀때도 요긴하게 쓸 수 있고, 이 방식이 아니라면 컬러 코드를 문자열 형태로 일일이 바꿔줘야 하는 귀차니즘을 미연에 방지할 수 있다. 본론으로 돌아와서, colors.xml에 아래처럼 입력했다고 가정한다. #6f52e8 #6f52e8 #6f52e8 #ff0d00 #6f52e8 이 중 colorR..

뭐가 문제인지 안스에서 깃허브 계정으로 로그인을 할 수가 없었다. 깃허브 데스크탑을 쓰면 해결되긴 하지만 이것보다 편한 게 안스에서 자체적으로 커밋 때리는 거라... 방법을 찾다가 로그인 창 한쪽에 토큰으로 로그인하라는 말이 있는 걸 봤다. 그래서 토큰으로 로그인 시도해보니 성공해서 포스팅을 남긴다. 먼저 깃허브에 로그인한 다음 프로필을 눌러 Settings로 들어간다. 그 다음 왼쪽 메뉴 중 밑에 있는 Developer settings를 누른다. 그 다음 왼쪽에서 Personal access tokens를 누른다. 그 다음 위에 있는 Generate new token을 눌러 새 토큰을 만들 준비를 한다. 그럼 이 화면이 나온다. 이 밑으로도 여러 옵션들이 있다. Note에는 생성되는 토큰에 대한 설명을..
1. java.lang.NoSuchMethodError: No static method metafactory 이 에러는 자바 호환성 중 자바 8버전 호환성이 없기 때문에 발생한다. 앱 수준 gradle에 아래를 추가하면 해결된다. compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } 2. CLEARTEXT communication to xx.xxx.xxx.xx not permitted by network security policy 이 에러는 매니페스트의 태그 안에 android:usesCleartextTraffic="true" 속성 넣어주면 해결된다. 3. socke..
이전 포스팅이 Room DB의 사용법이었다. 이번엔 Room DB란 무엇인지에 대해 포스팅하려고 한다. onlyfor-me-blog.tistory.com/290 [Android] Room DB 사용법 이번 포스팅에선 제트팩 라이브러리에 속하는 룸 DB를 사용한 간단한 CRUD 예제 코드를 기록할 것이다. 먼저 앱 수준 gradle에 의존성을 추가한다. implementation 'com.google.android.material:material:1.1.0'.. onlyfor-me-blog.tistory.com 그 전에 DB(데이터베이스)란 무엇일까? 개인적으로 살면서 많이 들어본 단어다. 혼자 쓰는 경우와 함께 쓰는 경우 상관없이, 앱이든 게임이든 어딘가에 데이터를 저장하는 처리가 꼭 필요하다. 게임을 ..
21.04.13 - 코드 테스트 후 정상 작동 확인, xml 코드 별 어떤 xml의 코드인지 기재 이 포스팅은 자바로 작성돼 있다. 코틀린 버전은 아래 링크를 타고 들어가서 확인하면 된다. 네비게이션을 사용했지만 화면 전환 때문에 사용하는 것이라 제외하고 봐도 상관없다. https://onlyfor-me-blog.tistory.com/556 [Android] Jetpack Navigation, Room DB, Flow 같이 사용하기 - 1 - 예전에 자바로 같은 내용의 포스팅을 쓴 적이 있다. https://onlyfor-me-blog.tistory.com/290 [Android] Room DB 사용법 21.04.13 - 코드 테스트 후 정상 작동 확인, xml 코드 별 어떤 xml의 코드인지 기재 이번..