일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- ApplicationEvent
- assertThat
- async/await
- AVG
- AWS
- Azure
- bind
- builder
- button
- c++
- c++ builder
- c03
- Today
- Total
목록전체 글 (363)
기록
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/IDEdc/btrE8N7WJsK/w69YWtTqvDbxjgn8VnzQs1/img.png)
개요 다른 블로그의 포스팅 중 콜백과 관련된 포스팅은 자바스크립트를 이용한 예제와 프로미스를 활용하는 개선 방법 등을 담고 있는 포스팅이 많다. 안드로이드에서는 어떻게 콜백을 이용할 수 있을까 궁금해져서, 프로젝트에 적용해보고 글로 정리해 두려고 한다. 프로젝트가 어느 정도 틀이 잡히면 기능별 모듈화를 시도한다. 프로젝트 중 데이터를 송수신하는 코드들을 모아 network 모듈로 구성하려는 시도가 있었다. 클래스간 서로 참조하지 않도록 결합도를 낮추어야 했고, 여기에 callback을 이용했다. 해당 프로젝트의 정보 : db(firebase), front(android) 순서 1) RequestListener.kt 만들기 2) GetRequest.kt 만들기 3) Activity에서 호출 예제 1) Re..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/C1i9e/btrC9mLloYL/484y6egWZvPH9M1XlXfwz1/img.png)
개요 progressbar activity/fragment에 등록 progressDrawable xml 만들기 progressbar에 progressDrawable 등록 code progressbar activity/fragment에 등록 progressDrawable xml 만들기 아래에서는 progress를 background보다 아래에 두었다. 1과 2를 선언하는 순서에 따라 progress와 background중 어떤 것이 위에 와야 할지 정할 수 있다. scaleWidth는 전체를 얼마로 볼지를 의미한다. Progress의 android:max="100"의 항목과 유사하다. progressbar에 progressDrawable 등록 결과
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/sp3LG/btrEhYjrxcA/cb4dFGDcjfveVAQzDSvpK0/img.png)
문제 이미지를 위젯의 백그라운드 또는 소스로 설정할 때, 위젯의 너비 또는 높이가 늘어남에 따라 이미지 소스가 예상하지 못한 모양이로 늘어나는 경험을 한 적이 있다. 위젯의 비율에 따라 다른 이미지를 적용해 줄수 있지만, 많은 수의 이미지 파일을 관리해야 하는 어려움이 생긴다. 아래는 말풍선 모양의 이미지로, 뷰의 크기가 변할 때 말풍선의 꼬리도 함꼐 늘어나버리는 것을 확인할 수 있다. 나인 패치 이미지 나인패치 이미지를 활용하면 변경 가능한 영역을 지정할 수 있다. 이를 활용하면 위젯이 늘어나더라도 깔끔한 형태의위젯을 만들 수 있다. 또한 padding을 주는 방법으로도 활용할 수 있다. 나인 패치 이미지는 ooo.9.png의 파일 형식을 갖는다. 사용해보기 1. drawable에 example.png..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/CPKGl/btrB46qscjj/EnEaxJaNks39GYgxavuaBK/img.gif)
1. 개요 (1) recyclerview 만들기 (2) data controller 추가 (3) callBack custom (4) Swipe시 bakcground 설정 (5) adapter에 listener 연결하기 2. code (1) recyclerview 만들기 2022.03.29 - [안드로이드/예제] - androidStudio/kotliln/recyclerview 사용하기 (2) data controller 추가 class MyAdapter : RecyclerView.Adapter(){ ... fun swapData(fromPos: Int, toPos: Int){ Collections.swap(dataset, fromPos, toPos) notifyItemMoved(fromPos, toPos..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bKh6Fj/btrCUml8fml/Js3k1SexNckylxv2Zx5mK0/img.png)
개요 figma로 작업한 파일을 다운받아 사용하던 중 이미지의 해상도가 낮아, 이미지 파일이 뿌옇게 보이는 문제를 겪었다. 이를 해결하기 위해 세가지 방법을 시도했다. svg 형태로 다운로드 크기를 확대한 png 다운로드 디자이너에게 새로운 파일 요청 해결하기 (1) svg 형태로 다운로드 figma에서는 svg형태로 다운로드 할 수 있다. 문제는, 아래처럼 각각의 path를 선택할 수 있는 경우에만 android studio에서 활용할 수 있다는 것이다. 아래와 같이 이미지 파일을 svg로 다운받더라도, pattern, image 태그가 생긴다. 이러한 pattern, image 태그는 안드로이드 스튜디오에서 인식하지 못한다. (2) 크기를 확대한 png 다운로드 figma에서 이미지를 확대해서도 다운..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/YA661/btrCLBpKmtW/ScVH8aLQm5lB8NmBkgHiuk/img.png)
들어가면서 리사이클러뷰는 가장 많이 쓰는 뷰 중 하나로, 여러 개의 리사이클러뷰를 겹쳐서 쓰거나 반복해서 쓰는 경우가 있었다. 더 나은 구조를 고민하던 중에 리사이클러뷰에 여러개의 view를 연결할 수 있음을 알게 되었다. 개요 데이터 클래스 만들기 아이템뷰 만들기 리사이클러뷰 어댑터 만들기 viewholder에서 viewType별 binding 하기 Activity/Fragment에 리사이클러뷰 추가하기 Code (1) 데이터 클래스 만들기 package com.example.myapp; public class MessageData { private String timestamp; private String message; private String name; public MessageData(Stri..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/zVSlH/btrB8WAPIR6/SGEhqGf1yGhI1Ia3jquiU0/img.png)
index (1) 의존성 주입 build.gradle (:app) (2) SettingsActivity (3) 화면구성 res/xml/root_preferences.xml (4) add onClick listener code (1) 의존성 주입 build.gradle (:app) plugins {...} android {...} dependencies { ... // preference implementation 'androidx.preference:preference-ktx:1.2.0' } (2) add SettingsFragment class SettingsFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedIns..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/n1u6V/btrBo2OSyXx/H2dWvoqmKSZo2wmTg2QE8k/img.png)
API Application Programming Interface 프로그래밍 언어에서 제공하는 기능을 제어할 수 있게 만든 인터페이스 프로그램의 기능을 다른 프로그램이 쓸 수 있게 하는 것이 목적 자바 API 자바를 사용하여 쉽게 구현할 수 있도록 한 클래스 라이브러리의 집합 자바라는 언어를 사용하여 사용자의 부담을 최소화하는 반면에 입출력, 화면 구성, 이미지, 네트워크와 같이 복잡하지만 필요한 클래스들을 미리 구현하여 사용자가 쉽게 구현하도록 하는 API SDK Software Development Kit 개발자에게 다른 프로그램에 추가하거나 연결할 수 있는 커스텀 앱을 제작할 수 있는 기능을 제공하는 도구 모음 여러 API, 디버깅, 문서 등 여러 도구를 포함 SDK가 없다면 모든 기능을 처음부터..