viewBinding (뷰 바인딩) android studio 안에서 XML의 view에 접근하기 위해서 findViewByld를 사용했었습니다. 하지만 android studio 3.6부터 Gradle Plugin에 포함되면서 추가 플러그인 없이 viewBinding이 정식지원됩니다. (android studio 4.0부터 BuildFeatures로 이동되었습니다.) findViewByld에서 viewBinding으로 사용을 대체하면서 코드가 클린해지고, 속도와 오류(null)에 대한 안정성을 확보할 수 있습니다. ex)private var viewBinding: classname? = null // 초기화 viewBinding!!.TextViewid.text = "" // .xml에서 textview를 가져와 사용 2021. 8. 22. 코루틴 (coroutine) Import kotlinx.coroutines.* Scope : 제어범위 및 실행범위 지정 Globalscope : 프로그램 어디서나 제어 동작이 가능한 기본범위 Coroutinescope : 특정한 목적의 dispatcher 를 지정하여 제어 및 동작이 가능한 범위 Dispatchers.default 기본적인 백그라운드 동작, cpu의 사용량이 많은 작업에서 사용하기 적합 Dispatchers.io 네트워크, 디스크에 최적화 된 동작, 작업을 멈추는 것에 최적화 dispatchers.main UI구성스레드에서 동작 *모든플랫폼에서 지원이 되지는 않는다. CoroutineScope의 확장함수 Launch와 Async Launch 반환값이 없는 job 객체 Async 반환값이 있는 deffered 객체 반.. 2021. 8. 3. [Clone coding] instagram (3) play-services-auth Nullsafety xml파일 생성 Res -> 안드로이드 리소스파일 beginTransaction() .commit() 오류 play-sevices-auth Execution failed for task ':app:checkDebugDuplicateClasses'. 2021. 7. 9. [Clone coding] instagram (2) 오류 1. firebase 연동오류 could not parse the android application module's gradle config. resolve gradle build issues and/or resync. android studio안에서 연동하지않고 firebase 홈페이지에서 먼저 생성 후 연동시키는 방법으로 진행 2. 연동시 코드입력 후 gradle 오류 firebase 홈페이지에서 설명을 따라서 붙여넣고 Sync Now했을때 인터넷접속오류 AndroidManifest.xml 파일에 Sync Now 2021. 7. 8. [Clone coding] instagram (1) signin - SNS Login 연동기능 - 회원가입과 회원 정보 관리 인증 등을 간편하게 관리할 수 있다. designlibrary (support library) - com.android.support - 구글의 디자인 가이드라인 - 여러 앱의 제각각이었던 디자인을 통일된 UI/UX로 만들기 위해 라이브러리 제공 - 표준 프레임워크 API에서 사용할 수 없던 추가 편의 클래스 및 기능 제공 - 하위 버전에 대한 호환성문제 해결용도 - 사용자가 손쉽게 사용할 수 있게 Meterial, RecyclerView 사용을 지원 출처 https://developer.android.com/topic/libraries/support-library/features?hl=ko 오류 Manifest merger fai.. 2021. 7. 7. 레이아웃 (Linear, Relative, Constraint) Linear (선형 레이아웃) - orientation 속성을 사용하여 단일 방향으로 하위 요소들을 정렬할 수 있습니다. - weight 속성을 사용하여 하위요소들의 가중치를 할당할 수 있습니다. (기본 0) Relative (상대적 레이아웃) - 여러개의 중접된 레이아웃을 사용할 수 있습니다. - 서로 다른 뷰끼리 상대적인 위치로 정렬할 수 있습니다. (상대적인 위치 뷰의 ID를 참조) Constraint - 레이아웃 계층을 하나로 유지하여 크고 복잡한 레이아웃에 적합하다. - 화면 가로, 세로 전환시에 비율을 유지하기 때문에 메모리 관리 및 개발자의 편의성에 유용합니다. - 레이아웃을 사용하기 위해서는 최소 3개의 위치제약조건을 설정해 줘야합니다. 2021. 7. 7. 이전 1 2 3 4 5 6 다음