목록Android (12)
Hayden's Archive
참고 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) ListView * AdapterView AdapterView는 여러 개의 차일드 뷰를 통합하여 화면에 표시할 수 있음 LinearLayout, RelativeLayout과 같이 차일드 뷰의 배치만 담당하는 레이아웃과는 달리 사용자와 상호작용도 처리할 수 있으며 항목의 선택이 가능 표시할 항목을 Adapter 객체로부터 전달받아 화면에 출력 항목의 개수는 제한 없음 실행 중에 항목이 바뀔 수 있고 표시할 수 있는 데이터의 원본도 다양 * ListView 여러..
참고 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 액티비티 1) 액티비티 안드로이드 응용 프로그램을 구성하는 4개의 주요 컴포넌트 Activity, ContentProvider, BroadcastReceiver, Service 액티비티는 그 중 하나이면서 가장 기본적인 주요 컴포넌트 화면 하나가 바로 액티비티 즉 사용자와 상호작용할 수 있는 하나의 윈도우 사용자와의 인터페이스를 구성하지만, 그 자체는 출력 기능이 없으므로 직접적으로 보이지 않는다. 2) 액티비티와 View 액티비티 그 자체는 사용자에게 보여..
참고 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 안드로이드 멀티 태스킹 안드로이드는 멀티태스킹 지원 여러 개의 응용 프로그램을 동시에 실행 가능 데스크톱 환경과는 달리 자원이 넉넉하지 않으므로 여러 가지 제약이 따름 메모리의 크기가 작음 많은 프로그램을 동시에 실행하기에는 무리가 있음 화면이 좁아서 여러 개의 프로그램을 중첩시켜 보여줄 수 없으므로 한 번에 하나의 프로그램만 보임 생명주기(Life Cycle) 여러 개의 프로그램을 동시에 실행할 수는 있지만 사용자의 눈에 보이고 직접 사용하는 프로그램은 언..
참고 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 키보드 이벤트 처리 1) 사용자가 키보드를 누르면 포커스를 가진 View의 onKeyDown 메서드가 호출되며, View 클래스의 자식 클래스들은 onKeyDown 메서드를 재정의하여 키입력을 처리함 boolean onKeyDown(int keyCode, KeyEvent event) 2) View.OnKeyListener 인터페이스의 onKey 메서드를 구현한 후, onKey 메서드를 리스너로 등록하여 활용할 수 있음 boolean onKey(View v, ..
참고 1 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 참고 2 : https://developer.android.com/guide/platform?hl=ko 1) 애플리케이션 안드로이드는 기본적으로 캘린더, 전화번호부(contact), 구글 맵, 브라우저, 이메일, SMS 프로그램 등 핵심 애플리케이션을 탑재하고 있음 여기에 개발자가 작성하는 서드 파티 애플리케이션이 추가되어 애플리케이션 생태계를 구축 2) 애플리케이션 프레임워크 애플리케이션들이 사용하는 프레임워크를 제공 개발자들이 애플리케이션을 개발하기 ..
참고 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 1) RelativeLayout 위젯과 부모 View와의 위치 관계 또는 위젯끼리의 관계를 지정함으로써 View를 배치하는 레이아웃 서로 간의 위치 관계가 화면이 구성되는 결과를 결정함 위젯끼리 관계를 지정하려면 먼저 '누구'를 지칭하기 위한 id가 필요하므로 기준이 되는 위젯에 id를 지정해야 함 상대적 위치가 지정되지 않으면, 자식 View의 기본 위치는 좌측 상단이 됨 2) RelativeLayout의 속성 형식 설명 layout_above 지정된 Vi..
참고 1 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 참고 2 : https://thinhme.wordpress.com/2015/10/24/lesson-6layout-in-android/ 1) layout_width, layout_height 속성 layout_width와 layout_height 속성은 View의 폭과 높이의 크기를 지정하는 속성 View는 부모 View(또는 액티비티) 안에 배치될 때, layout_width, layout_height 속성이 지정하는 만큼의 크기로 부모 View 안에 배..
activity_main.xml에서 위와 같은 코드를 작성하였고 아래와 같이 에러가 발생하였다. 안드로이드 스튜디오 최신 버전에서 발생하는 이슈 사항으로, android:tint를 사용할 수 없는 에러가 발생한다. 방법 1) android:tint 대신 app:tint 사용 참고 : https://fornewid.medium.com/%EB%86%93%EC%B9%98%EA%B8%B0-%EC%89%AC%EC%9A%B4-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-ui-%EB%94%94%ED%85%8C%EC%9D%BC-%EC%82%B4%ED%8E%B4%EB%B3%B4%EA%B8%B0-5e5f98c836af 놓치기 쉬운 안드로이드 UI 디테일 살펴보기 지난 주에 2020 N..
참고 : https://yjs-program.tistory.com/9 안드로이드 스튜디오에서 padding 속성을 @dimen/activity_vertical_margin이나 @dimen/activity_horizontal_margin 값으로 대체하려고 했는데 에러가 났다. Cannot resolve symbol 로 에러가 뜨는 것을 확인할 수 있다. 이 경우 dimen.xml에 activity_vertical_margin와 activity_horizontal_margin를 정의해줘야 한다. dimen.xml이 없을 경우 res/values 폴더에 만들어주면 된다. 아래와 같이 정의해주면 해결
참고 : 한국방송통신대학교 모바일앱프로그래밍 교재( https://press.knou.ac.kr/goods/textBookView.do?condCmdtCode=9788920035999&condLscValue=001&condYr=&condSmst= ) 1. Activity와 View Acitivity 안드로이드 앱의 각 화면을 구성하는 단위 액티비티 자체는 화면에 직접적으로 보이지 않으며 액티비티 안의 View가 사용자에게 보이는 실체를 구현하게 됨. 여러 개의 View가 모여서 액티비티 하나를 구성하고, 액티비티 여러 개가 모여서 하나의 안드로이드 앱을 구성하는 구조 View View의 파생 클래스 개수는 방대하며, 각 클래스가 지원하는 속성이나 기능이 굉장히 많음 외우는 것은 불가함. 안드로이드 애플리..