적용되는 범위: Theme(앱전체) > Style(뷰) > Attribute 👍 스타일과 테마는 유사점이 많으나 용도가 서로 다르다. 테마와 스타일은 속성을 리소스에 매핑하는 키-값의 쌍이라는 동일한 기본구조를 가진다. ✌️ 스타일은 특정 뷰 유형의 속성을 정할 수 있다. 특정한 하나의 스타일로 버튼 속성을 지정하거나 할 수 있다. 스타일에 지정하는 모든 속성은 레이아웃 파일에서 설정할 수 있는 속성. 모든 속성을 스타일로 추출하면 여러 위젯에서 손쉽게 속성을 사용하고 관리할 수 있다. 위젯: 홈 화면 맞춤설정의 필수적인 부분. 👌 테마는 스타일, 레이아웃, 위젯 등으로 참조할 수 있는 명명된 리소스 모음을 말한다. 테마는 colorPrimary같은 시맨틱 이름을 Android 리소스에 할당한다. 🤘 스..
+22.03.24 view binding 링크 수정 아니 기존 코드를 View Binding을 써서 수정하려 했더니 자꾸만 id를 못찾고.. 안뜨고... 그래서 본격적으로 비교해본다 Data Binding과 View Binding 일단 ❗여기서 잠깐! 보고 넘어가자 뷰바인딩과 데이터바인딩의 차이?! : 링크1, 링크2 , 링크3 이 링크들에서 가져오자면 큰 차이점은 데이터 바인딩 라이브러리는 태그를 사용하여 만든 레이아웃만 처리한다 뷰 바인딩은 레이아웃 변수나 레이아웃 표현식을 지원하지 않으므로 XML의 데이터와 레이아웃의 바인딩에 사용할 수 없다. → ❓ 내부적으로 데이터 바인딩 클래스를 생성할 때는 루트 뷰에 tag를 삽입하는데 뷰바인딩은 삽입하지 않음 뷰바인딩은 데이터바인딩보다 더 빠르게 바인딩 클..
지난 글에서 Dialog를 만들었지만 바탕의 Activity가 pause되지 않아 말짱 도루묵 상태.. 물론 Dialog를 해내었으니 완전 말짱까지는 아니다 약간 양념된 도루묵 정도..? 암턴! 시작한다 Activity를 이용한 다이얼로그는 그렇게 어렵지 않았다! 링크들만 잘 따라해도 금방 할 수 있다(그러나 장점이 있으면 단점도 있기 마련..) DialogActivity를 추가해준다. DialogActivity .java public class DialogActivity extends Activity implements View.OnClickListener { private Button mOk, mCancel; private ActivityDialogBinding binding; @Override pr..
Material Components(MC) 사용법을 모른다면 여기로 Dialog의 MC 페이지는 이쪽 → 근데 코틀린으로 쓰여져 있다. 내 코드들은 자바인데... 사람들이 자바로는 이 기능을 안쓰는 걸까.? 왜 안나올까... 일단 내 식대로 해본 다음 글을 써볼게유.. ❓ 결과 이렇게 나타난다. CANCEL과 OK의 위치가 다르지 않나 싶어서 찾아보니 이건 안드로이드가 지정한 거라 바꿀 수 없다고 하네.. 그래서 그냥 positive에 negative 액션을 넣고 negative에 positive 액션을 넣기로 했당! (이래도 되는지는 모른다! 작동은 잘 되니까 괜찮지 않을까요...?) 👩💼 코드를 올려봅시다. 나는 위의 MC페이지와 Android의 대화상자 페이지를 섞었다. 우선 DialogFragm..
원본 링크 < notion! 나는 도대체 언제 콜백을 이해하게 될까..? Callback 이란 나중에 실행할 argument(인자)로 다른 함수에게 전달되는 함수를 의미한다. (call: 호출, back: 다시 돌아옴) 💡 싱글 스레드로 작동하는 javaScript에서 비동기 작업을 통해 여러가지 Task를 동시에 처리할 수 있는 이유는 callback을 이용하기 때문이다! - by Somebody 안드로이드에서 콜백 메서드란 다른 함수에 인수로 전달되는 함수이며 일종의 이벤트 후에 실행될 것으로 예상된다. 이 메서드의 목적은 다른 클래스의 어떤 일이 끝났을 때 클래스에 동기/비동기를 알려주는 것. 비동기적인 일이 진행되고 있을 때 매우 유용하다. Design pattern은 Observer Design..
구글 코드랩 에서 모든 코드랩을 확인할 수 있음 Google Codelabs Google Developers Codelabs provide a guided, tutorial, hands-on coding experience. Most codelabs will step you through the process of building a small application, or adding a new feature to an existing application. They cover a wide range of topics such a codelabs.developers.google.com Android Kotlin Fundamentals: LinearLayout using the Layout Editor k..