분류 전체보기 1203

Cloud Firestore

Cloud Firestore사용법 메모입니다. https://firebase.google.com/docs/firestore/quickstart?hl=ko Cloud Firestore 시작하기 | Firebase 빠른 시작에서는 Cloud Firestore를 설정하고 데이터를 추가한 후 Firebase Console에서 방금 추가한 데이터를 확인하는 방법을 볼 수 있습니다. Cloud Firestore 데이터베이스 만들기 Firebase 프로젝트를 아직 만들지 않았다면 Firebase Console에서 프로젝트 추가를 클릭한 후 화면의 안내에 따라 Firebase 프로젝트를 만들거나 기존 GCP 프로젝트에 Firebase 서비스를 추가합니다. Console의 탐색 firebase.google.com htt..

Android Design Pattern (MVC, MVP, MVVM)

이번에는 안드로이드 디자인 패턴에 대해 알아보겠습니다. 안드로이드 앱을 만들어보셨다고 가정하고 글을 쓰겠습니다. (이런 검색어를 검색하시는 분들은 처음 개발하시는분들은 드물 것 같아서..ㅎㅎ) 무슨 안드로이드 개발자 채용공고 같은데 보면 자격요견에 안드로이드 디자인 패턴에 대한 이해 (MV**) 같은 것들이 적혀있는 곳이 많습니다. 자 이게 뭔지 한번 보겠습니다. 1. MVC - M(Model) + V(View) + C(Controller) 예전부터 사용되던 디자인 패턴입니다. View 같은 경우에는 xml을 파일이고, Controller는 activity파일, Model 같은 경우에는 data를 정의해놓은 모델입니다. 안드로이드 앱을 개발해보셨으면 다 아실 텐데, activity에서 view와 Mode..

ViewPager Tablayout

TabLayout을 만드는 방법에 대해서 알아봅니다. ViewPager가 넘어가도록 탭을 만드는 것입니다. 일단 build.gradle 에 아래와 같이 추가하고 implementation 'com.android.support:design:28.0.0' 그리고 XML 부분을 추가해주고나서 새로운 custom_tab.xml을 만들어줍니다. 이제 tab을 추가해주고 onTabSelected 부분에서 viewpager와 연결해줍니다. layout_tab.addTab(layout_tab.newTab().setCustomView(createTabView("1번"))) layout_tab.addTab(layout_tab.newTab().setCustomView(createTabView("2번"))) layout_ta..

ViewPager (Fragment Slider)

ViewPager 로 화면이 쒹쒹 넘어가는? 기능을 만들어보겠습니다. 일단 xml에 viewpager를 삽입해줍니다. 그 다음 Adapter를 만들어줍니다. 페이지가 0 일 때 FirstFragment, 1일 때 Second, 나저미는 Third 이런식으로 나옵니다. class MyPagerAdapter(fm: FragmentManager) : FragmentPagerAdapter(fm) { override fun getItem(position: Int): Fragment { return when (position) { 0 -> { FirstFragment() } 1 -> SecondFragment() else -> { return ThirdFragment() } } } override fun getCo..

Viewpager (이미지 슬라이드)

손라가락으로 휙휙 넘기는 슬라이드 기능을 만들어보겠습니다. 아래의 이미지 부분을 넘기면, 이미지가 넘어가는 형태의 기능입니다. 앱을 사용하다가 많이 보셨을 것 같습니다. Viewpager라고하는데 코딩을 시작해보죠. 자, xml에서 ViewPager 부분을 만들어줍니다. 다른 레이아웃 부분은 지우고, ViewPager부분만 추출한 코드입니다. 그다음 ViewPagerAdapter를 만들어주구요 class ViewPagerAdapter(private val context : Context) : PagerAdapter() { private var layoutInflater : LayoutInflater? = null val Image = arrayOf( R.drawable.ai, R.drawable.css,..