일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- development language
- transformation.map
- SwiftUI
- swift
- scrolling tab
- Swift Package Manager
- swift #swift keychain #keychain 사용법
- 개발자 면접
- DataBinding
- Tuist
- DevelopmentRegion
- UIViewControllerTransitioningDelegate
- UIPresentationController
- pod install
- ios
- 스크롤 탭
- ViewBuilder
- 상단 탭바
- oberve url
- detect url
- notifychanged
- GeometryReader
- Side Menu
- url 추적
- base64 변환
- convert base64
- Android
- List
- 기존 앱
- url 관찰
- Today
- Total
목록분류 전체보기 (170)
버그 잡이
최근 프로그래밍을 공부하면서 목표로 잡은 것이 "1일 1커밋"과 "1일 1블로그"이다. 보통 66일간 지속하면 습관이 된다고 하는데 지금까지 20% 정도 달성한 것 같다. 이 기세를 몰아가기 위해서 "지속하는 힘(고바야시 다다아키 지음)"라는 책을 읽었다. 1. 저자는 습관이라는 주제로 책을 시작한다. 지속하는 힘은 결국 습관으로 귀결된다. "원래 습관의 족쇄란 너무도 가벼워 느낌조차 없다가도 시간이 흐를수록 점점 무거워져 결국에는 다리를 절단 내고 만다.(워렌버핏)" - 29p "뇌는 의식적이건 무의식적이건 상관없이 반복적으로 하는 행동을 중요한 일이라고 인식한다. 그리고 그것이 거듭 반복되면 기억의 창고에 저장된다. 그 결과 특별히 의식하지 않고도 쉽게 하는 행위, 이것이 뇌 과학에서 말하는 습관의 ..
모바일 앱 개발 공부를 시작하고 지금까지 내가 만들고 싶은 앱을 만들었다. 3개의 어플을 만들고 나니 나의 한계점이 보이기 시작한다. 디자인이라던지, 기능이라던지 뭔가 비슷비슷하다... ㅋㅋㅋ 나의 시야를 넓힐 필요성을 느꼈고 인기있는 어플을 유의깊게 사용해보고 후기를 남기고자 한다. 그 첫번재 앱으로 영어학습 앱 cake이다. 1. Main 화면 - 디자인 깔끔하고 메인화면에 다양한 콘텐츠가 들어가 있다. - 영상 기반 콘텐츠가 주를 이루는데 '어떻게 만들면 이렇게 영상을 빨리 재생시킬 수 있을까'라는 생각이 들 정도로 영상 재생시 걸리는 버퍼가 거의 없다. - 한가지 표현에 대한 다양한 콘텐츠를 연달아 볼 수 있게 구성하였다. 2. 콘텐츠 세부 화면 - 영상에 따라 영어 자막이 나오고 핵심 표현은 3..
"분명 자바로 짰는데 객체지향은 어디있지?" 지난 나의 안드로이드 작품을 돌아보면서 가장 크게 느낀점이다. 나의 작품에는 끽 해봐야 메소드 분리 정도 있을뿐 객체 지향의 개념은 없었다. 그러던 중 우연히 오브젝트라는 책을 추천받았다. 객체 지향에 대해서 아주 심도있지만 쉽게 저술된 책이라고 한다. "이 책은 객체지향 패러다임에 어느 정도 익숙하고, 프로그래밍 언어를 능숙하게 다룰 수 있으며, 실무 경험이 풍부한 독자들이 읽을 것이라고 생각하고 쓰여졌다. ...... 실무 경험이 부족한 상태하면 아무리 코드를 예로 들어 설명한다고 하더라도 추상적인 이론의 나열로밖에 보이지 않을 것이다." - 이 책의 대상 독자 후... 아직 나는 실무 경험이 없는데... 그래도 이왕 산거 조금이라도 읽어보자. 0장 . 프..
야놀자 앱을 보면 다음과 같이 recyclerView 안에 recyclerView가 들어간 구조로 되어있다. 원리는 간단한다. 1. recyclerViewA를 만든다 2. recyclerViewA 어답터에서 ViewHolder에 recyclerViewB를 정의해준다. 3. (recyclerViewA의 나오는 항목을 수평, 그리드 등 다양하게 적용하고 싶다면) -> ViewType을 활용하여 recyclerViewA에 각기 다른 뷰 타입을 적용하면 된다. 1. DataModel Chapter.class public class Chapter { public int id; public String chapterName; public String imageUrl; } SubJect.class public cla..
지금까지는 안드로이드를 공부할때 기능구현에만 중점을 두었다. 이제부터는 각 기능의 요소를 한줄한줄 파헤치며 공부해보고자 한다. (recyclerView 튜토리얼이 아니라 recyclerView 자체에 대한 이해를 높이고자 정리하는 글입니다.) 0. 구성요소 ViewHolder - 개별 아이템의 View를 생성하여 제공한다. Adapter - 데이터를 관리하고 목록에 표시한다. Activity - UI로 recyclerView를 보여주는 클래스이다. 1. ViewHolder & Adapter class MyAdapter(private val myDataset: Array) : RecyclerView.Adapter() { //개별 아이템에 view 생성하여 제공 class MyViewHolder(val te..
위와 같이 ActionBar 안에 TabLayout을 넣고 스크롤시 ActionBar가 사라지도록 해보겠습니다. 1. layout.xml 1)CoordinatorLayoout안에서 작업을 해야 스크롤시 동적인 작업을 진행할 수 있습니다. 2)AppbarLayout 안에 ToolBar로 ActionBar를 대체합니다. - ActionBar는 버전별 호환 문제가 있어 구글에서는 ToolBar 사용을 권장하고 있습니다. 3)ToolBar의 "scrollFlags"가 바로 스크롤시 ToolBar를 숨겨주는 역할을 합니다. 2. activity.class @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(s..
static - static을 붙여주면 객체를 생성하지 않고 사용할 수 있다. - - 위와 같이 저장되는 메모리가 다르다. - 그 결과 static메소드에서는 static 변수만 사용할 수 있다. *장점 - 쉽게 어디서든 가져다 쓸 수 있다. *단점 - static 영역은 GC가 작동하지 않기 때문에 메모리에 계속 남아있다. - 변수의 조작을 막을 수 없다. final - "변경을 제한한다." - (변수) 한번 선언된 변수 값을 바꿀 수 없다. - (메소드) 상속시 자식 클래스는 해당 메소드를 Override 할 수 없다. - (클래스) 상속이 안 된다. 어떻게 쓰이는가? "프로그램에서 사용될 상수 모음" public final class Constant{ public static final int RE..
floating Button을 클릭하면 로딩되는 동안 로딩 아이콘으로 변경되는 효과를 입혀보겠습니다. 총 3단계로 구분된다. 1. extended floating Button 만들기 2. 버튼 .shrink() / .extend() 3. 버튼 회전 1. extended floating Button 만들기 1) gradle 추가 - implementation 'com.google.android.material:material:1.2.0-alpha01' 2) layout.xml 2. 버튼 shrink / extend activity에서 (해당 floating button).shrink() 하면 아이콘만 남은 동그란 모양으로 변합니다. 반대로 (해당 floating button).extend() 하면 text..