일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 목표한번이뤄보자
- 운동
- overridePendingTraction
- FragmentSatePagerAdapter
- 개발
- 2020년 목표
- 재태크
- BottomNavigationViewEx
- FrameLayout
- FragmentPagerAdapter
- 독서
- Android Universal Image Loader
- TabLayout and ViewPager
- Today
- Total
목록Android (22)
seops

오늘은 오랜만에 야식을 먹느냐고 좀 늦었다... 근데 간이 심심해서, 조금 먹다가 디카페인 커피로 마무리했다. 어제에 이어서, 영화 목록을 갖고 오기 위한 서버 통신 부 중, SimpleCallback 부분을 개발할 예정이다. 회사에서 진행하는 프로젝트를 기반으로, Custom Callback을 만들어야겠다. 우선, 커스텀 콜백을 만들어 주기 위해서는 해당 (abstract)클래스가 Retrofit2의 Callback를 상속받으면 된다. 자동으로 onResponse() 와 onFailure() 를 Override 하면 될 것이고, 해당 Callback들의 서버 통신에 대한 구분이므로, onResponse() 에서 에러 코드로 분류하여 abstract fun onSuccess()와 abstract fun ..

네이버 영화 검색 API와 연동하기 위해서는 서버 통신 API가 필요하다. 현재 진행하는 프로젝트를 확인해보니, Retrofit2와 Coroutine를 이용해서 서버 통신이 개발되어있다. 코틀린 Coroutine 어제 코루틴 관련 책도 확인해보고, 블로그도 찾아봤지만 아래 블로그가 제일 직관적인 것 같다. medium.com/@limgyumin/코틀린-코루틴의-기초-cac60d4d621b 코틀린 코루틴의 기초 코틀린 의 코루틴은 비동기 프로그래밍을 처리할수 있는 좋은 방법입니다. medium.com 설명을 어느 정도 이해한 거 같다... 우선 구성을 한번 생각해봐야겠다. Activity/Fragment ViewModel Repository Api Service 1. SimpleRetrofit - Retr..
3주째 연속되는 야근으로 인해, 몸은 지칠 때로 지쳤다. 그러면서도 많이 배웠다. 지금까지 너무 우물 안, 개구리였다. 나름 안드로이드 앱을 개발할 자신이 있어 회사에서 담당하는 앱도 혼자서 다시 개발했지만, 제일 중요한 '안드로이드 트렌드'를 적용하지 못했다. 지금까지, 현재 회사에서는 더 이상 배울 것이 없다고 생각했고 자만했다. 이를 계기로, 내 생각을 정리하고 안드로이드 트렌드를 적용하는 어플리케이션을 개발해보기로 계획했다. 구글에 'android sunflower'라고 검색을 하면, 현재 안드로이드 앱 개발 트렌드가 적용되어 있는 프로젝트가 있다. 이처럼 현재의 트렌드를 적용하고, 앞으로의 트렌드를 적용할 수 있는 앱을 개발하는 것이 목표이다. '영화 검색 어플리케이션' 코로나 때문이기도 하지만..

[ 정의 ] -> 팩토리 메소드 패턴에서는 객체를 생성하기 위한 인터페이스를 정의하는데, 어떤 클래스의 인스턴스를 만들지는 서브 클래스에서 결정하게 만듦 [ 구현 ] public abstract class Pizzastore { public Pizza orderPizza(String type) { Pizza pizza; pizza = createPizza(type); pizza.prepare(); pizza.bake(); pizza.cut(); pizza.box(); return pizza; } abstract Pizza createPizza(String type); } public class NYPizzaStroe extends PizzaStore { Pizza createPizza(String ite..

[ 설계 ] - 현재 Bluetooth 상태에 대한 Callback을 관장하는 Subject(Observable)에서, Observer에게 Bluetooth 상태 공지 - BluetoothStateManager 클래스는 'Android Broadcast Receiver Bluetooth Events'의 receive 메소드가 정의 - 각 Activity 내, 정의된 udpateState() 메소드를 통해 현재 상태 수신 - Activity > onCreate()에서 BluetoothStateManager.onRegister() 호출 - Activity > onDestroy() or onPause()에서 BluetoothStateManager.onUnregister() 호출 [ 코드 ] https://gi..

[ 정의 ] ※ Observer Pattern이란? me) Subject와 Observer들로 구성되며(일 대 다), 데이터를 포함한 객체가 변화하게 되면 Observer들에게 알려주는 패턴 - 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들에게 연락이 가고, 자동으로 내용이 갱신되는 방식으로 '일대다' 의존성을 정의 - 데이터의 주인은 Subject이며, Observer는 데이터가 변경되었을 때, Subject에서 갱신해 주기를 기다리는 입장이기 떄문에 의존성을 갖음 - 느슨하게 결합하는 디자인을 사용하면 변경 사항이 생겨도, 무난히 처리할 수 있는 유연한 객체지향 시스템을 구축할 수 있음 (객체 사이의 상호의존성 최소화) [ 구현 ] ※ Subject public interface Subje..
1. FrameLayout [ 내용 ] 1) 자식으로 추가된 여러 뷰 위젯들 중 하나를 Layout의 전면에 표시할 때 사용하는 클래스 2) 화면에 표시되는 뷰를 바꿔가면서 표시하기 위함 3) 다양한 크기의 뷰 위젯들을 추가할 수 있음 4) 안드로이드에서는 여러 뷰를 동시에 표시해야 하는 명확한 의도가 없는 한, FrameLayout이 오직 하나의 자식 뷰 위젯만을 표시하게 만들도록 권고 (자식 뷰들이 서로 겹치지 않으면서, 다양한 화면 크기에 따라 스케일 될 수 있는 UI를 구성하기가 어렵기 때문) [ FrameLayout에 표시될 자식 뷰 변경하기 ] 1) frameLayout에 뷰 추가 또는 삭제 private void changeView(int indes) { frame.removeViewAt(0..

1. GOAL - GridLayout 내, Child들에게 균등하게 크기를 주는 것 - 검색 : Google > "android gridlayout weight" https://stackoverflow.com/questions/10016343/gridlayout-not-gridview-how-to-stretch-all-children-evenly GridLayout (not GridView) how to stretch all children evenly I want to have a 2x2 grid with a buttons inside. This is only ICS so I am trying to use the new GridLayout given. Here's the XML of my layout:..
참고 사이트 1. http://www.hardcopyworld.com/gnuboard5/bbs/board.php?bo_table=lecture_tip&wr_id=1448 블루투스 기초 > Tip and Tech | HardCopyWorld 블루투스 기초 > Tip and Tech | HardCopyWorld www.hardcopyworld.com 2. https://stackoverflow.com/questions/27633680/bluetoothdevice-connectgatt-with-transport-parameter BluetoothDevice.ConnectGatt() with transport parameter I just started with Android and set up an API 2..
1. Developing 1) Profile Toolbar and Menu a) snippet_top_profilebar.xml - Merge tag > AppBarLayout > Toolbar > RelativeLayout b) profile_menu.xml c) ProfileActivity 내, Toolbar 세팅 해주기 - onCreateOptionsMenu(Menu menu) d) activity_profile.xml - CoordinatorLayout > RelativeLayout > include Tag 2) Building the User Profile a) snippet_top_proflie.xml - Merge tag > ConstraintLayout b) Circle Profile li..