본문 바로가기

분류 전체보기

(60)
#12. 데이터 저장과 관리 2021-02-21 - 요약 - 1. SQLite는 관계형 DBMS의 일종입니다. 2. 데이터베이스 관련 용어는 다음과 같습니다. 데이터: 하나하나의 단편적인 정보 테이블: 데이터가 표 형태로 표현된 것 데이터베이스(DB): 테이블이 저장되는 저장소 DBMS: 데이터베이스를 관리하는 시스템 또는 소프트웨어 열: 각 테이블은 1개 이상의 열로 구성됨 열 이름: 각 열을 구분하는 이름 데이터 형식: 열의 데이터 형식 행: 실제 데이터 SQL: 사용자와 DBMS가 소통하기 위한 언어 3. 명령 프롬프트에서 SQLite에 접속하려면 adb.exe파일을 이용합니다. 4. 데이터베이스를 운영하기 위한 SQL문의 형식은 다음과 같습니다. 테이블 생성: CREATE TABLE 테이블이름(열이름1 데이터형식, 열이름2 데이터형식, ...)..
#SQLite 사용시 root권한 획득 adbd cannot run as root in production builds Error 안녕하세요! Hellow:) 입니다. 오늘은데이터베이스를 사용할 때 root권한을 획득해야 하는데 adbd cannot run as root in production builds 와 같은 메시지가 뜨면서 root권한으로 안되시는분들을 위해 글을 남깁니다 :) 에뮬레이터를 실행하고 usb디버깅 허용 대화상자를 허용한 이후에(에뮬레이터를 실행하면 자동으로 뜹니다.:)) 명령 프롬프트를 관리자 권한으로 열어서 해당 경로로 이동합니다. cd C:\Users\[사용자이름]\AppData\Local\Android\Sdk\platform-tools 그리고 나서 adb root 명령어를 입력하면 이런 메시지가 뜨는데 해결방법은 아주 간단합니다. 현재 제가 실행하고있는 AVD는 pixel2 기기 인데 [Tools] - ..
#11. 어댑터뷰 2021-02-18 - 요약 - 1. 어댑터뷰의 계층도는 다음과 같습니다. java.lang.Object android.view.View android.widget.viewGroup android.widget.AdapterView android.widget.AbsListView android.widget.GridView android.widget.ListView android.widget.ExpandableListView android.widget.AbsSpinner android.widget.Spinner android.widget.Gallery 2. 리스트뷰를 만드는 형식은 다음과 같습니다. 리스트뷰에 나열할 내용을 미리 String 배열로 만들어 놓습니다. 리스트뷰 변수를 생성하고 XML의 에 대응시킵니다. Array..
#10. 액티비티와 인텐트 2021-02-17 - 요약 - 1. 안드로이드의 4대 컴포넌트는 액티비티, 서비스, 브로드캐스트 리시버, 콘텐트 프로바이더입니다. 2. 액티비티는 안드로이드폰에 나타나는 화면 하나하나를 말하는데, 일반적으로 액티비티 하나당 XML 파일 하나를 만듭니다. 3. 새로운 액티비티를 만들때는 android.app.Activity 클래스를 상속받습니다. 그리고 추가한 액티비티는 AndroidManifext.xml 파일에 등록해야 합니다. 4. 명시적 인텐트는 일반적으로 사용자가 새로운 액티비티를 직접 생성하고 호출할 때 사용합니다. 5. 데이터를 한쪽 방향으로 전달하는 명시적 인텐트와 데이터를 양방향으로 전달하는 명시적 인텐트는 다음과 같이 동작합니다. (a) 데이터를 한쪽 방향으로 전달하는 명시적 인텐트 (b) 데이터를 양방향으..
#9. 그래픽과 이미지 2021-02-14 - 요약 - 1. 화면에 도형을 그릴 때 사용하는 클래스는 Canvas와 Paint이다. 캔버스와 페인트의 개념은 도화지와 붓에 비유할 수 있습니다. 2. 그래픽을 표현할 때는 다음과 같이 View 클래스를 재정의하는 형태가 많이 사용됩니다. public override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(재정의한 클래스 이름(this)) } private class 재정의한 클래스 이름 (context:Context) : View(context) { override fun onDraw(canvas: Canvas?) { super.onDraw(canvas) // 화면에 그려..
#8. 파일 처리 2021-02-09 직접 풀어보기 8-1 2021-05-24 openFileInput(fileName) -> openFileInput(File(fileName))으로 변경 :) openFileInput(), openFileOutput() 내장 메모리의 저장 위치 ---> /data/data/패키지명/files 폴더(디렉터리)이다. 2. 다음과 같이 [예제 8-5]의 4~7행에서 4행을 생략한다면 5~7행을 어떻게 바꿔야 할지 빈칸을 채우시오. 답 : [4~7행] var cal = Calender.getInstance() var cYear = cal.get(Calender.YEAR) var cMonth = cal.get(Calender.MONTH) var cDay = cal.get(Calender.DAY_OF_MONTH) [..
#7.메뉴와 대화상자 2021-02-05 - 요약 - 1. 안드로이드의 메뉴는 옵션 메뉴와 컨텍스트 메뉴로 구분됩니다. 2. 옵션 메뉴의 설정은 다음의 세 단계를 거칩니다. 1. 메뉴 폴더 생성 및 메뉴 XML 파일 생성, 편집 2. Kotlin 코딩 : onCreateOptionsMenu() 메소드 오버라이딩 (해당 메소드는 MainActivity클래스 에 커서를 두고 ctrl + O(코드 - 오버라이드 메소드)에서 찾아서 생성 가능) 3. Kotlin 코딩 : onOptionsItemSelected() 메소드 오버라이딩 (위에 상기된 방식과 동일 생성) 3. 컨텍스트 메뉴의 설정은 다음의 네 단계를 거칩니다. 1. 메뉴 폴더 생성 및 위젯의 메뉴 XML 파일 생성 , 편집 2. Kotlin 코딩 : onCreate()안에 registerFo..
#6. 고급 위젯 다루기 2021-02-03 - 요약 - 1. 아날로그시계와 디지털시계는 화면에 시간을 표시하는 위젯으로서 시계를 표현하는 용도로 쓰인다. 크루노미터는 시간을 측정하는 타이머형식의 위젯입니다. 2. 타임피커(TimePicker)는 시간을, 데이트피커(Datepicker)와 캘린더뷰(CalendarView)는 날짜를 표시하고 조절합니다. 3. 캘린더뷰(CalendarView)의 연도는 1900부터 시작하고 월은 0부터 시작합니다. 4. 자동완성텍스트뷰와 멀티자동완성텍스트뷰는 사용자가 단어의 일부만 입력해도 자동으로 완성되는 에디트텍스트입니다. 5. 프로그레스바는 작업의 진행 상태를 바 또는 원 형태로 제공하고 주로 스레드와 함께 사용한다. 시크바는 프로그레스바와 대부분 비슷하며 사용자가 터치로 임의 조절이 가능하다. 레이팅바는 진행 ..