본문 바로가기

분류 전체보기

(38)
Recycler View Recyler View 정의 1. RecyclerView 1) ListView - 아래로 스크롤 할 때, 맨 위의 객체 삭제하고 아랫 부분에 객체를 새로 생성하여 사용 - 스크롤을 반복하면 수백, 수천개의 View 객체가 생성/삭제 2) RecylcerView - 아래로 스크롤 할 때, 맨 위의 객체를 맨 아래로 이동시켜 재활용 (객체에 담겨지는 데이터는 새로 갱신) - 맨 처음 화면에 보여지는 View가 10개면 실제 데이터가 수백, 수천개라도 오로지 10개의 View 객체만 생성해 재활용 2. ViewHolder - ViewHolder : 맨 처음 10개의 View객체를 기억하고 있을(홀딩) 객체 (맨 처음 화면에 보여지는 View가 10개라면) - ViewHolder로 기억한 View 객체는 맨 위..
TabLayout과 ViewPager2 연결하기 1. ViewBinding 설정 build.gradle(Module:app) viewBinding { enabled = true } 2. activity_main.xml 설정 tablayout과 viewPager2 배치 3. Fragment 생성 1) New -> Fragment -> Fragment(Blank) 생성 - Fragment 파일과 xml 파일 동시 생성 2) 생성한 Fragment.xml 수정 4. 생성한 Fragment class 파일 수정 1) FramgentToDo - Fragment 레이아웃만 반환 해주는 class class FragmentTodo : Fragment() { // FragmentToDoBinding : 뷰 바인딩 클래스, XML 레이아웃 파일과 연결된 바인딩 객체를..
Status Bar (상태바) 1. values -> themes -> themese.xml 2. 상태바 색상 변경 - windowLightStatusBar = true : 배경색이 밝으면 아니라면 false로 설정 - statusBarColor : 색상 변경 true @color/light_yellow 3. 상태바 감추기 true
Button Icon 1. 버튼 아이콘 1) 클릭 시 버튼 아이콘 변경 - 크기 조절 X, 아이콘만 넣을 경우 - 크기 조절 O : 사용 2) 아이콘 selector 연동 - drawableStart = "@drawable/selector_icon" 으로 icon selector 연동 (drawableStart, drawableEnd, drawableLeft, drawableRight, drawableTop, drawableBottom) 2. Icon 과 텍스트 동시 출력 - paddingLeft : Icon 과 버튼 사이의 Left 간격 - drawablePadding : 텍스트와 Icon 사이 간격 (음수 : 더 가까워짐)
Selector 1. drawable -> New -> Drawable Resource File - root element : selector 2. 버튼 디자인 변경 1) 클릭 시 버튼 색상 변경 - state_pressed = "true" : 버튼이 눌렀을 때 / state_pressed = "false" : 버튼이 눌리지 않았을 때 - 태그와 태그로 버튼 모양, 색상 변경 2) 버튼 selector 연동 - Button -> android.widget.Button 변경 - background = "@drawable/selector_button" 으로 버튼 연동 3. 텍스트 컬러 변경 1) 클릭 시 텍스트 색상 변경 2) 텍스트 selector 연동 - textColor = "@drawable/sele..
객체 지향 프로그램 (OOP) 객체지향 프로그램 - 상태 (사물의 속성)와 행동(속성을 통해서 사물이 수행)을 가지는 객체 상태, 행동 - 상태 : 출발지 + 종착지, 남은 기름 양, 타이어 손상, 승객 수 - 행동 : 어딘가로 이동, 기름 사용, 엔진 시동 켬, 앞/뒷문 연다 공통점 - 모든 버스는 엔진 킬 수 있음 - 출발지와 도착지 있음 - n명 이상 탑승 가능 - 경유 공급 받음 상속 X 상속이 없이 계속해서 버스 추가(마을 버스, 호텔 셔틀 버스, 공항 셔틀 버스 등등)하는 것은 비효율적이다. 차이점 출발지-도착지 사이 정류장 입석 시내버스 (City Bus) 수많은 정류장 입석 가능 광역버스 (Wide Bus) 몇 개의 정류장 입석 불가능 고속버스 (Express Bus) 정류장 없음 입석 불가능 상속 O - Bus 클래스..
진수 변환 1. 2진수 1) 2진수 (String) -> 10진수 (Int) - Integer.parseInt(string, 2) : string값인 2진수를 10진수로 변환 val binaryString:String = "100" println(Integer.parseInt(binaryString, 2)) // 10진수 : 4 2) 10진수(Int) - > 2진수 (String) - Integer.toBinaryString(int) : int형인 10진수를 String형 2진수로 변환 val binaryString:String = "100" val int = Integer.parseInt(binaryString, 2) println(Integer.toBinaryString(int)) // 2진수 : 100 2. ..
항해 4Week FACTS & FINDINGS 1. Android 입문 강의 Android UI 와 Activity, Intent에 대해 배웠고 로그인, 회원가입, 자기소개 만들기 과제를 실습했습니다! 다양한 위젯을 만들어보았고 Intent, 이벤트 처리를 구현할 수 있었습니다. 코드 가독성을 높이기 위해 style.xml로 묶어 처리하였습니다. 2. RegisterForActivityResult 추가적으로 registerForActivityResult를 이용해 Activity가 돌아올 때 자동 입력되는 기능을 구현해보았습니다. Activity가 돌아올 때 결과값을 반환해줘 조금 더 쉽게 액티비티 간의 결과 처리 하는데 도움이 되었다. 3. 추가적인 기능 ImageView의 이미지를 랜덤 표시, font 변경 등을 통해..