![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cpvrI9/btrAE9uhaqB/QN3IY4wHrKOXcZlxBrng41/img.jpg)
계산기 앱의 UI를 완성해보도록 합니다. 우선 계산된 화면이 입력되는 부분과 키패드 부분 이렇게 2가지로 나뉘게 됩니다. 계산 화면은 콤포넌트로 완성하고, 키패드 부분은 으로 완성할 것입니다. 아래는 화면이 입력되는 부분입니다. app:layout_constraintVertical_weight 속성으로 화면과 키패드 간의 비율을 설정할 수 있습니다. 키패드를 만들기 위한 뷰로 Table Layout을 사용합니다. 아래와 같이, app:layout_constraintVertical_weight="1.5"로 정의하여, 화면 비율이 1과 1.5로 나뉘도록 합니다. app:layout_constraintTop_toBottomOf="@id/topLayout"고 같이, 해당 레이아웃의 윗 부분이 화면 레이아웃의 아..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/BhZnb/btrbxqUqkqM/j7GScIeXP5kcNK9LeZpAG0/img.jpg)
해당 프로젝트의 이전에 작성한 코드를 뷰바인딩으로 바꿔보겠습니다. 모듈 단위의 build.gradle에 뷰 바인딩을 선언하면, 레이아웃 XML 파일들의 이름 뒤에 Binding이 붙은 채로 클래스가 생성되게 됩니다. 우선 아래의 코드 처럼, 전역 변수로 binding을 선언하는데, 타입으로는 뷰 결합으로 생성된 ActivityMainBinding을 지정합니다. 그리고 binding에 layoutInflater로 뷰를 가져올 수 있도록 선언하고, view에는 binding.root를 선언합니다. binding.root는 바인딩이 가지는 프로퍼티인데 root를 통해서 어떤 뷰를 가지고 있는지 알게됩니다. 이로써 binding을 사용해 원하는 XML 뷰를 가져올 수 있습니다. private lateinit v..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ljMVb/btrbuAJUJrs/KHjkdF2xqcFj3YHPyXGVE0/img.jpg)
findViewById를 매번 사용하여 뷰를 가져오는 경우, 뷰가 여러 개인 경우 관리 포인트가 많아지고 코드가 복잡해질 수 있습니다. 뷰 바인딩은 여러 뷰 객체들을 관리하고, 쉽게 가져올 수 있도록 도와주는 역할을 합니다. XML 레이아웃 파일에 정의된 뷰들을 바로 가져와 쓸 수 있어 매우 편리합니다. 기본적인 사용 방법은 우선, build.gradle의 모듈 단위에 아래와 같이 코드를 추가합니다. android { viewBinding { enabled = true } } 뷰 바인딩 사용 방법을 요약하자면 아래와 같습니다. 우선 setContentView(R.layout.activity_main) 처럼 설정된 부분을 뷰 결합을 통해서 바꿔줘야 합니다. 이렇게 함으로써, xml 객체를 binding에 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bwOEnB/btq89LUfHXu/sMdeYEniJ0Ri8uX6UX8wgK/img.jpg)
뷰를 액티비티로 어떻게 가져오는지 알아 봅시다. 안드로이드 스튜디오가 업그레이드 되면서 ViewBinding으로 뷰를 가져오는데, 여기서는 id로 직접 가져오거나 xml을 임포트해서 가져오는 방식을 설명할 것입니다. 먼저 activity_listener.xml 파일을 확인합니다. xml 파일에 위와 같이 뷰가 정의되어 있습니다. 다음에는 Listener.kt 파일을 확인합니다. package com.example.myapplication import android.os.Bundle import android.os.PersistableBundle import android.util.Log import android.view.View import android.widget.TextView import and..
- Total
- Today
- Yesterday
- 대한민국 미제사건
- RecyclerView
- findViewById
- notifyDataSetChanged
- 안드로이드 스튜디오 에러
- 인텐트
- 2019년 사건사고
- 메소드 오버라이딩
- 2021년 사건사고
- 안드로이드 프로젝트
- 리스트뷰
- lazy init
- android adapter
- 애드뷰
- addView
- 뷰 바인딩
- 상대적 레이아웃
- 선형 레이아웃
- 리사이클러뷰
- 안드로이드 앱 만들기
- view binding
- ToDo List 앱 만들기
- tabLayout
- bmi 계산기 만들기
- 탭레이아웃
- 안드로이드 어댑터
- 자바스크립트 배열
- 미제사건
- 2007년 사건사고
- Bmi Calculator
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |