Deperecated/Android_강의 55

안드기본서

1. Inflation - XML 레이아웃에 정의된 정보를 메모리 상에서 객체로 만드는 객체화 과정 - 애플리케이션이 시작될 때 이 과정을 거쳐 메모리 상에 만들어진 객체들을 참조하기 위해 ID를 지정함. 2. 크기 표현 단위 단위 단위 표현 설명 dp or dpi 밀도 독립적 픽셀 (density independent pixel) 160dpi 화면을 기준으로 한 픽셀 ex) 1인치 당 160개의 점이 있는 디스플레이 화면에서 1dp는 1px와 같음. 1인치 당 320개의 점이 있는 디스플레이 화면에서 1dp는 2px와 같음. sp or spi 축척 독립적 픽셀 (scale independent pixel) 가변 글꼴을 기준으로 한 픽셀로 dp와 유사하나 글꼴의 설정에 따라 달라짐 3. 다양한 레이아웃 ..

안드로이드 - Context란

Context 계속 쓰는데 뭔지 모르겠다... 1. 안드로이드 Developers 설명 Interface to global information about an application environment. This is an abstract class whose implementation is provided by the Android system. It allows access to application-specific resources and classes, as well as up-calls for application-level operations such as launching activities, broadcasting and receiving intents, etc. 어플리케이션 환경에 관한..

안드로이드 - Content Provider

1. Content Provider란? - 안드로이드 4대 구성 요소 중 하나로 애플리케이션이 저장한 데이터를 다른 애플리케이션이 사용할 수 있도록 제공하는 개념이다. - 안드로이드OS가 B의 요청을 받고 A가 DB에 저장해놓은 데이터들을 제공하라고 A의 Content Provider를 동작시키고 안드로이드OS가 그 데이터를 받아 최종적으로 B가 받아가는 형식이다. 2. 예제 : APP2가 APP1의 데이터의 데이터를 받아와 SELECT/DELETE/UPDATE/DELETE하는 예제. 1. APP1에 ContentProvider()을 상속한 MyContentProvider 클래스를 생성한다. 2. SELECT(query), INSERT, DELETE, UPDATE 함수를 구현한다. lass MyConte..

안드로이드 - SQLite 데이터베이스(2)

1. 제공되는 클래스 - 안드로이드는 SQLite를 사용할 때 표준 SQL 쿼리문 사용 대신 사용할 수 있는 클래스를 제공하고 있다. - 클래스를 이용하는 방법 OR SQL문을 사용하는 방법 중 편한 방법을 사용한다. 1. INSERT // 5. DB 오픈 var helper = DBHelper(this) var db = helper.writableDatabase // 1. 클래스를 이용하는 방법 - INSERT var sdf = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()) var date = sdf.format(Date()) // (textData, intData, floatData, dataData) values (?, ?, ?, ?) -> 1:1 배치..

안드로이드 - SQLite 데이터베이스(1)

1. SQLite 데이터 베이스 - 안드로이드에서 사용하는 내장 데이터 베이스로 표준 SQL문을 사용하는 관계형 DB이다. - MySQL과 유사한 문법을 사용하고 있으며 일반적인 관계형 DB가 가지고 있는 기능을 갖고 있다. - 애플리케이션의 내부저장소에 생성된다. 2. DB 생성 1. SQLiteOpenHelper을 상속하는 DBHelper 클래스를 생성한다. // 1. 클래스 생성 // (부모 클래스 4개 생성자) // name : DB의 이름. // version : DB파일의 기록. (이전 데이터는 날아가면 안되니까) // 유지보수 단계에서 DB를 바꿀경우 version 숫자를 바꾸고, 바꾸면 onUpgrade()가 호출된다. class DBHelper(context : Context) : SQL..

안드로이드 - 데이터 관리 - 파일 입출력

1. 안드로이드 저장소 - 안드로이드는 애플리케이션이 데이터를 저장할 수 있는 저장소를 두 가지로 제공하고 있다. 1. 내부 저장소 : - 애플리케이션을 통해서만 접근이 가능하다. - 코드를 통해서 접근할 수 있는 저장소. - 각 애플리케이션 마다 내부 저장소를 갖고있으며 앱이 삭제되면 내부 저장소도 삭제된다. 2. 외부 저장소 : - 단말기 내부의 공유 영역으로 모든 애플리케이션이 접근 가능하다. - 단말기를 컴퓨터에 연결하면 탐색기를 통해 접근 할 수 있는 영역을 의미한다. - 용량 or 공유 목적으로 사용된다. 2. 파일 입출력 1. 내부 저장소 - openFileInput, openFileOutput 2. 외부 저장소 - FileInputStream, FileOutputStream - 외부 저장소..

안드로이드 - DialogFragment

1. DialogFragment란? - AlertDialog를 관리하는 Fragment를 만들어 사용할 수 있도록 제공되는 Fragment이다. - AlertDialog와 큰 차이는 없으며, 현업에서는 AlertDialog 보다 DialogFragment를 사용하는 것이 편할 때가 종종 있다. 2. 예제 1. DialogFragment를 상속하는 Fragment를 생성. 2. AlertDiaglouge생성 3. MainActivity에 Fragment show() 4. 리스너 생성 후 세팅 class FirstFragment : DialogFragment() { override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { // 4. 리스너 세팅 ..

안드로이드 - ListFragment

1. ListFragment란? - ListView를 보다 쉽게 사용하기 위해 제공되는 Fragment. - Fragment 내에 ListView를 사용할 경우 보다 편리하게 구성할 수 있도록 제공되는 Fragment이다. - ListView의 id가 @android:id/list로 설정되어 있을 경우 자동으로 ListView를 찾아 관리하게 된다. - 일반적으로 리스트뷰를 만드려면 1. 어댑터 생성 2. 어댑터를 리스트뷰에 세팅 3. 필요하다면 리스너 생성이 있어얗는데 이 모든걸 id만 맞추면 자동으로해준다. 2. 예제 1. ListView의 id 설정 2. ListFragment()를 상속하는 클래스 생성. 3. 리스트뷰를 구성하기 위한 어댑터 세팅. 4. 리스너 세팅. class FirstFragm..

안드로이드 - Activity Controller

1. Controller - 웹, 모바일 등 애플리케이션 개발 시 눈에 보이는 화면들을 관리하는 요소를 Controller라고 부른다. - 만약 눈에 보이는 모든 화면을 Fragment로 만들어 사용할 경우 Fragment를 관리하는 Activity가 Controller의 역할을 한다. 2. Activity의 역할 - 각 Fragment를 교환하고 관리하는 역할을 한다. - Fragment들이 사용할 데이터를 관리하는 역할을 한다. - 각 Fragment들은 배치되어있는 Activity에 접근할 수 있다. - 애플리케이션 개발 시 눈에 보이는 화면을 Fragment로 사용할 경우 Activity가 Controller의 역할을 하게된다.1 3. 예제 - 프래그먼트1에서 버튼을 누르면 프래그먼트2에 데이터를..

안드로이드 - Fragment

1. Fragment란? - Activity 내의 작은 화면 조각. - 일반적으로 여러 화면을 가지고 있는 애플리케이션은 여러 Activity를 가지고 있는 애플리케이션을 의미한다. - Activity는 독립된 실행단위로 메모리를 많이 소모하는데 독립된 실행단위가 아닌 화면만 필요한 경우 Activity보단 Fragment를 사용하는 것이 효율적이다. - Fragment는 Activity내의 작은 화면의 조각으로 Activity의 화면을 여러 영역으로 나누어 관리하는 목적으로 사용되며, 각 영역을 관리하는 클래스라고 보면 된다. - Fragment는 안드로이드 5.0에서 추가되었지만 하위 버전에서도 사용할 수 있도록 설계되어 있다. 2. 주요 메서드 - add : Fragment를 지정된 레이아웃에 추가..