프로그래밍 썸네일형 리스트형 [안드로이드] 데이터베이스(sqlite) 사용법 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 데이터베이스(SQLite) 안드로이드에서 데이터를 저장하는 방법은 예전에 포스팅했던 sharedpreferences를 사용하는 방법이 있습니다. 하지만 많은 데이터를 관리하기 위해서는 데이터베이스를 사용하여야만 합니다. 데이터 베이스를 만드는 구조는 다음과 같습니다.1. 데이터 베이스 생성2. 테이블 생성3. 레코드 추가 안드로이드에서는 데이터 베이스인 sqlite를 사용하기 위해서 SQLiteOpenHelper를 사용합니다. SQliteOpenHelper클래스는 데이터베이스를 만들거나 열기.. 더보기 [안드로이드] 핸들러(Handler) 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 핸들러(Handler) 저번 강의에서 쓰레드를 이용하여 1초마다 값이 증가하는 코드를 작성 하였습니다. 1초마다 증가하는 값을 주기 위해 쓰레드를 사용하였는데 버튼을 클릭 할 경우에만 값을 확인 할 수 있었습니다. 저번시간에 썼던 코드를 보시면 아래와 같습니다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748package com.example.donghyun.thread; import.. 더보기 [안드로이드] 스레드(Thread) 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 스레드(Thread) 안드로이드에서는 표준자바의 스레드를 그대로 사용 할 수 있습니다. 그렇기 때문에 스레드라는 말을 많이 들었을 것입니다. 스레드는 동시 수행이 가능한 작업 단위이며 현재 수행되는 작업 이외의 별도의 기능을 동시에 처리하고자 할 때 스레드가 사용됩니다. 다음 코드는 별도의 스레드를 하나 생성하여 1초마다 value 값을 증가 시키고 있습니다. 그리고 버튼을 누를 때마다 value의 값을 확인 할 수 있습니다. 123456789101112131415161718192021222.. 더보기 [C언어] calloc() 과 realloc() 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. calloc() 과 realloc() 동적메모리를 할당 하는 방법에는 malloc() 외에 calloc()과 realloc()이 있습니다. 먼저 calloc()에 대해서 알아보겠습니다. calloc()은 다음과 같이 정의 되어 있습니다. void *calloc(size_t count, size_t size); calloc()은 두개의 매개 변수를 가지고 있습니다. 두개의 매개 변수는 각각 크기와 개수를 따로 받습니다. 다음은 malloc() 으로 메모리 할당하는 법과 calloc()으로 메모.. 더보기 [안드로이드] 프로그래스바(ProgressBar) 사용하기 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 프로그래스바(ProgressBar) 프로그래스바는 작업의 진행정도를 표시하거나 작업이 진행중임을 알려주는 역활을 합니다. 안드로이드에서는 막대와 원 형태의 프로그래스바가 있습니다. 프로그래스바의 기본은 원모양이며 프로그래스바의 스타일을 style="?android:attr/progressBarStyleHorizontal"로 해줄 경우 막대 모양으로 바뀌게 됩니다. 예제를 통하여 막대 모양의 프로그래스 바를 구현해보도록 하겠습니다.XML은 다음과 같습니다. 12345678910111213141.. 더보기 [C언어] 동적메모리 할당의 해제 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 동적 메모리 할당 해제 우리는 메모리를 동적으로 할당하는 함수가 malloc() 이라고 배웠습니다. 그런데 동적으로 메모리를 할당하고 사용한 뒤에는 반드시 할당한 메모리를 해제 해주어야 합니다. 해제 해주지 않는다면 메모리 누수가 발생할 것입니다. 할당 한 메모리를 해제하는 함수는 free() 함수를 사용 하는 것입니다. 사용하는 방법은 다음과 같습니다. int *p = malloc(sizeof(int)); // 4byte의 메모리 할당free(p); // 4byte의 메모리할당 한것을 해제.. 더보기 [안드로이드] 리스트 뷰(ListView) 이용하기 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 리스트 뷰(ListView) 리스트 뷰는 일반적으로 리스트 형태로 된 컨트롤 입니다. 이러한 리스트 뷰는 여러개의 아이템 중에서 하나를 선택 할 수 있습니다. 이렇게 선택할 수 있는 위젯을 '선택 위젯' 이라고 합니다. 대표적인 선택 위젯은 '리스트 뷰', '스피너', '그리드 뷰' 등이 있습니다. 이러한 선택 위젯은 선택할 수 있는 여러개의 아이템이 어댑터(adapter)를 통해 화면에 표시됩니다. 쉽게 말해서 어댑터(adapter)가 하는 역활은 데이터를 받아 view를 생성하고 이렇게 .. 더보기 [C언어] 동적 메모리 할당 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 동적 메모리 할당 함수 내에 지역적으로 선언된 변수나 배열은 함수가 종료가 되면 메모리에서 사라 집니다. 그렇기 때문에 다른 함수에서 다시 사용할 수 없습니다. 다른 함수에 사용하기 위해 전역적으로 선언하면 되지만 이 방법은 프로그램의 종료까지 메모리 공간을 사용하므로 비효율 적입니다. 이러한 불편함 때문에 필요할 때만 메모리를 할당 받아 사용하고 반납하는 것이 바로 동적 메모리 할당 입니다. 다시 정리 해보자면 동적 메모리 할당이란 프로그램이 실행 중에 원하는 시간에 메모리를 할당 받는 것.. 더보기 [안드로이드] 스피너(Spinner) 이용하기 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다. 그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다. 그럼 시작하도록 하겠습니다. 스피너(Spinner) 스피너는 여러 아이템 중에서 하나를 선택하는 위젯 입니다. 예를 들면 콤보박스와 같습니다. 콤보박스를 누르면 그 밑에 작은 창이 보이고 창안에 있는 여러 아이템들 중 하나를 선택하도록 되어있는 위젯이라고 할 수 있습니다. 실습을 통하여 스피너에 대해서 알아 보겠습니다. 먼저 화면은 아래와 같이 구성 하였습니다. 텍스트 뷰는 스피너에서 선택된 아이템을 나타나게 하고 텍스트 뷰 아래에는 스피너를 넣었습니다. 스피너를 클릭해서 하나의 아이템을 선택하게 되면 텍스트 뷰에 .. 더보기 [C언어] 포인터(10) - 배열과 매개변수 안녕하세요 ! 초보개발자 입니다. 이 블로그는 개인 공부 정리용 블로그 입니다. 혹 잘못된 내용이 있다면 지적 부탁드리겠습니다.그리고 질문주신다면 최대한 아는선에서 답변드리도록 하겠습니다.그럼 시작하도록 하겠습니다. 배열과 매개변수 매개변수를 통해 배열을 전달하려고 할 때 매개변수의 타입을 배열로 하면 됩니다. 하지만 이는 성능상 문제가 있습니다. 왜냐하면 배열의 크기가 작으면 상관 없지만 배열의 크기가 클 경우에는 시간이 아주 오래 걸릴 수 있습니다. 그렇기 때문에 매개변수로 배열을 넘겨주는 것 보다 배열의 주소만 넘겨주게 되면 성능적으로 매우 효율적이고 메모리도 많이 절약 할 수 있습니다. 예를 들면 다음과 같이 할 수 있다. 1234567891011121314#include int sumArr(in.. 더보기 이전 1 2 3 4 ··· 6 다음