전체 글 354

Android - 이미지 저장 및 변경 on Project.

Google의 Material Icon 을 download 받았다. 나같은 경우 Content - Add를 다운로드 받았는데, 다운로드 후 압축을 풀어보니 다음과 같은 내용물이 풀렸다. Material Design을 어디까지 지원할 의도인지는 모르겠으나, ios 용도 들어 있고, web 용도 들어 있다. 뭐 어쨌든 나의 경우는 Android App에 사용할 것이기 때문에 drawable-hdpi, drawable-mdpi, drawable-xhdpi, drawable-xxhdpi, drawable-xxxhdpi 폴더를 넣어야 한다. 하지만 기본 project 생성 후 res에 존재하는 drawable 관련 폴더는 drawable, drawable-v21밖에 없다. 그냥 위 폴더들을 app\src\main..

Android 2016.01.24

Android - Material Design of Google.

Material Design 에 대해 쉽게 설명해 놓은 페이지 (한글)http://blog.bsk.im/2015/08/18/introducing-android-design-support-library/ Material Design 사용시 사용할만한 Icon 다운로드 받을수 있는 페이지 (영문, Google)https://design.google.com/icons/ 사용관련해서 CC-BY license를 따른다고 한다.Feel free to use, remix, and re-share the icons in your products. The icons are available under the CC-BY license. We'd love attribution in your app's "about" scre..

Android 2016.01.24

Adsense - [용어] 페이지 RPM

Adsense를 가입하고 홈 화면을 보면 다른 단어들은 대략 이해가 가는데 보다보면 "페이지 RPM"이라는 단어가 보인다. 페이지 RPMAdsense 도움말 페이지에 정의는 "1000회 노출당 수익"로 되어 있다.예상 수입을 페이지 조회, 노출 또는 검색이 발생한 횟수로 나눈 다음 1000을 곱한 값이다. 여기서 오해하지 말아야 하는 것은 "1000회 노출당 수익"인데 확정 수익이 아니라 예상되는 수익이라는 점이다. 페이지 RPM은 높을 수록 좋은 것인가 낮을 수록 좋은 것인가?사실 이 질문이 의미가 크게 없는게 예상되는 수익이라 확정 수익이 아니라는 점이다.그래도 현재까지의 노출, 클릭등을 바탕으로 1000회 기준을 예상한 것이라 페이지 RPM 이 높다는 의미는 웹페이지를 방문한 사람들이 광고를 많이 ..

Android - Back key 무시

일반적으로 안드로이드에서 back key를 누르게 되면 back stack에서 activity가 pop 되면서 이전의 activity로 돌아가게 된다. back key의 주요 동작이 이와 같은데 간홀 이 동작 말고 다른 동작을 원할때가 있다. 예를 들면 back key를 누르면 처음 한번째에는 warning을 띄워 주고, 다음 back key를 누를 경우 app을 종료시키는 것과 같은 루틴이다. 이 말고도 back key를 아예 무시하도록 할 수도 있다. 아래 코드와 같이 back key를 누르게 되면 onBackPressed 함수가 호출되게 되고, 해당 함수내에서 super.onBackPressed()가 실제 이전 activity로 복귀하는 곳이다. 이전 activity로 복귀를 원하지 않으면 해당 s..

Android 2016.01.20

Android - 더블탭(double tap), 더블클릭, 더블터치

안드로이드 앱을 개발하다 보면 touch, back key 등 말고도 두번 터치(정확한 명칭은 함수상 이름으로 보면 double tap 인데 사실 함수명 보기 전에는 더블 클릭, 더블 터치등으로 검색했었다.) 뿐만 아니라 fling (슬라이드)등이 있다. 이 추가적인 동작들은 일반적인 event 함수 외에 GestureDetector Class를 통해 인지해 낼 수 있다. GestureDetectorDetects various gestures and events using the supplied MotionEvents. The GestureDetector.OnGestureListener callback will notify users when a particular motion event has occu..

Android 2016.01.19

Android - TextView 그리고 EditText View 전환

메모장 같은 프로그램을 보면 일반 TextView였다가 edit 버튼을 누르면 EditText View로 변경되고,save 버튼을 누르면 다시 TextView로 전환되는 광경을 볼 수 있다. 하나의 view를 가지고 속성을 변경해 가면서 사용하는 것인가...아니면 2개의 view를 가지고 전환해 가면서 사용하는 것인가... 여러 가능성을 열어두고 구글링을 해 본 경과, TextView, EditText를 각각 구현해 놓고 전환해가능 방법이 사용된다는 것을 확인했다. 우선 layout xml에 다음과 같이 선언한다. 여기서 관심있게 보아야 하는 부분은 android:visibility 이다. 수정이 필요할때는 EditText 를 visible하게 하고, 수정이 필요 없을 때는 TextView를 visibl..

Android 2016.01.19

Android - ListView 갱신 with CursorAdapter.

ListView에 CursorAdapter를 연결해서 사용하게 될 경우 Database에 변화가 있을 경우 다시 select하여 해당 결과를 업데이트해주어야 한다. 이 때는 ListView를 건드릴 필요 없이, 중간의 매개체인 Adapter의 changeCursor를 호출해 주면 ListView가 갱신된다. [developer.android.com 출처]public void changeCursor (Cursor cursor)Added in API level 1Change the underlying cursor to a new cursor. If there is an existing cursor it will be closed.ParameterscursorThe new cursor to be used 실제..

Android 2016.01.18

Android - Activity 화면 전환 효과

Google Play에서 설치한 app을 쓰다보면 아무런 효과 없이 Activity가 전환되는 app들도 있지만, Activity 전환시 신규 Activity가 오른쪽에서 왼쪽으로 나타난다거나, 자연스럽게 fade in/out 된다거나 하는 app들이 있다. 자세한 구현 방법을 알기 전, 아무런 기반 지식이 없는 상태에서 생각하기론 flash를 사용하나라고 추측만 했었다. 아무래도 animation 효과를 code 상으로 구현한다고는 감이 오지 않았기 때문이다. 이 효과의 주인공은 다음과 같다.public void overridePendingTransition (int enterAnim, int exitAnim) Added in API level 5 Call immediately after one of ..

Android 2016.01.18

Android - Application Class

sqlite를 사용하는 코드를 짜다 보니 여러 Activity 에서 sqlite를 호출해야 하는 경우가 있었다. 이럴 경우 그렇다면 Activity가 onPuase 될 때 마다 close하고 onResume 될 때 마다 open 해야 하는 것인가. 아니면 Main Activity에서 open해 놓고, open 당시 생성된 sql handler를 인자로 넘겨서 사용할 수 있을 것인가. 생각지도 않은 곳에서 막혀서 헤매이고 있을 때, 구글께서 그럴때는 Application class를 사용하도록 하여라라고 말씀해주셨다.;; 나도 이번에 처음 접한 개념인데 app이 동작하는 동안 공통적인 부분에대해 구현해 놓는, 다시 말하자면 global하게 모든 routine에서 가져다가 쓸수 있는 그런 것들을 선언하거나 ..

Android 2016.01.18

Android - Cursor

Database cursor 우선 cursor의 의미를 명확히할 필요가 있다. 우리가 흔히 아는 cursor는 컴퓨터 화면에 깜빡거리는 막대기가 아니던가. 영어사전에 cursor를 찾아 보아도 그냥 한글로 커서라고만 나온다. 그래서 dictionary.com에 찾아보니 정의가 아래와 같다. noun1.Computers. a movable, sometimes blinking, symbol that indicates the position on a CRT or other type of display where the next character entered from the keyboard will appear, or where user action is needed, as in the correction o..

Android 2016.01.15