Programming Practice/Android 썸네일형 리스트형 [Contacts Provider]연락처 그룹 생성 및 입력 방법 1. 기본 1) 연락처의 그룹 정보를 담고 있는 ContactsContract.Groups 라는 테이블이 따로 있다. 2) ContactsContract.Groups 에 신규 그룹에 관한 row를 추가한다. 3) ContactsContract.Data 테이블에 GroupMembership 에 관한 row를 생성할 때, ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID 에 ContactsContract.Groups 테이블의 id를 할당한다. 2. ContactsContract.Groups 에 신규 그룹 row 추가 방법 1) 연락처 정보에서 그룹에 관한 정보를 중복을 제거해서 추려낸다. (사람별로 그룹 정보는 겹칠 수 있기 때문에 중복 제거를 해.. 더보기 [Contacts Provider]연락처 입력 방법 1. 기본ContentProvider 의 동작을 정의하는 ContentProviderOperation 객체와 ContentResolver 의 applyBatch method 를 사용하는 것이 기본. 2. Content Provider 의 operation 설정 로직 * A content provider manages access to a central repository of data. * 기본적으로 Contacts 와 Calendar 의 data 에 접근이 가능하다. * ContentProviderOperation 은 ContentProvider 에 수행할 특정 operation(ex. insert, update, delete) 를 정의할 때 사용하는 객체이다. 1) ContentProviderOper.. 더보기 [Contacts Provider]연락처 기본 개념 1) 테이블 구조 테이블명 테이블설명 Contact 사람별로 Contact table 의 row가 만들어진다. Raw Contact Summary Data Detail 2) 세부 설명 a. Raw Contact ㄱ. 목적 - sync 된 web service의 출처를 구분하기 위함 - 여러 web service(gmail, naver, daum 등등) 의 연락처와 휴대폰의 연락처를 동기화할 수 있는데, 이때 출처에 따라 구별할기 위해 Raw Contact를 구성. 안드로이드는 특정인에 대한 여러 Raw Contact 를 조합해서 사용자에게 연락처를 보여준다. ㄴ. 컬럼 구성 - ACCOUNT_NAME - 계정명 - ACCOUNT_TYPE - web service 종류 ex) 예를 들어 특정인이 abc@g.. 더보기 SQLite database 에 데이터 저장하고 조회하기 1. SQLite database 개념- Android device 내 text file 형태로 저장된다.- 크기가 350k 밖에 안되는 lightweight 한 database 2. SQLite database 이용 DB 구성과 CRUD method를 하나의 class 에서 작성한다. SQLiteOpenHelper 를 extends 하는 class 는 전체 class 의 inner class로 작성한다. 1) DB 구성 a. SQLiteOpenHelper 를 extends 하는 class 에서 아래 3개의 method 에 로직 구현 b. 3개의 method 로직 구현 생성자 1) database 생성 및 연결2) version 정보 설정 onCreate(SQLiteDatabase database) 테이.. 더보기 한 화면에서 버튼을 눌렀을 때 다른 화면을 호출하기 1. 다른 화면을 wizard를 이용해서 생성한다. - Android - Android Activity - activity 와 xml이 함께 생성되며, AndroidManifest.xml 도 설정된다. 2. 한 화면에서 Button 을 만들고, 클릭했을 때 호출되는 메서드를 매핑한다. - 화면에서 Button 만드는 예시 3. 호출되는 메서드에서 다른 화면을 호출한다. public void onAdd(View view) { Intent intent = new Intent(this, AddTimeActivity.class); startActivity(intent); } * Intent 라는 class를 사용하는 것이 중요하며, Intent 의 정의는 아래와 같다. abstract description of.. 더보기 화면에 리스트 목록 표시하기 1. 개념1) 2개의 레이아웃을 연결한다. - 첫번째 레이아웃 - 두번째 레이아웃 2. 방법1) Entity class를 작성한다.2) 사용자 정의 Adapter class를 작성한다.- 첫번째 레이아웃에 두번째 레이아웃을 연결하기 위해서는 Adapter class 가 필요하다.* Adapter 란? - data 관리와 화면 표시 방법 결정 (android 에서는 MVC 방식으로 구별되어 있지 않고, 하나의 adapter 에서 설정한다.) - interface - adater interface 의 method를 대부분 구현한 abstract class 인 BaseAdapter 가 있으며, 사용자가 정의할 Adapter는 가급적 BaseAdapter를 확장(extends)하도록 한다. - getView m.. 더보기 이전 1 다음