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