본문 바로가기

안드로이드142

안드로이드 - 텍스트뷰(TextView) 문자 정렬 안드로이드 앱을 개발 할 때 TextView를 많이 사용하게 되고, TextView의 문자를 정렬하게 됩니다. TextView의 문자를 정렬하는 방법에 대해서 알아보겠습니다. ※ 주의 : - TextView내의 문자를 정렬하기 위해서는 layout_width, layout_height의 속성이 "wrap_content"이면 정렬 할 수 없습니다. 1 2 3 4 5 6 7 cs - 아래의 이미지에서처럼 TextView내에서 정렬할 공간이 없으므로 문자를 정렬할 수 없습니다. 1. TextView 기본 문자 정렬 - TextView의 정렬속성인 gravity를 지정하지 않으면 left, top으로 기본 문자 정렬됩니다. 1 2 3 4 5 6 7 8 cs - 문자가 외쪽 상단에 정렬되어있습니다. 2. 문자 가.. 2015. 5. 12.
안드로이드 - 텍스트뷰(TextView) 긴 문장 흐르게 처리하기 TextView의 폭보다 긴 문장의 경우 Text 흐르게 하는 기능을 알아보겠습니다. 1. Layout XML의 TexView 속성을 아래와 같이 설정해야 합니다. (1) android:ellipsize="marquee" (2) android:singleLine="true" 2. Activity Java 코드에서 TextView의 메소드 setSelected(true)를 지정합니다. TextView tvTitle = (TextView)this.findViewById(R.id.tv_title); tvTitle.setSelected(true); public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedI.. 2015. 5. 11.
안드로이드 - 텍스트뷰(TextView)에 긴 문장의 줄임(..) 표시 TextView의 폭보다 문자의 길이가 길면 문자가 짤리는 현상이 있습니다. 이런 경우 문자가 짤리는 부분에 줄임(..) 표시하는 방법을 알아보겠습니다. 1. Layout XML의 TexView 속성을 아래와 같이 설정해야 합니다. (1) android:ellipsize="marquee" (2) android:singleLine="true" 2. 아래의 이미지에서처럼 "이번 테스트는 안드로이드 테스트뷰 테스트입니다." 문장은 "이번 테스트는 안드로이드 테스트뷰.."으로 표시됩니다. 2015. 5. 11.
안드로이드 스튜디오 - Interface Method 코드에 삽입하기 클래스가 인터페이스를 상속받게 되면, 반드시 인터페이스의 메소드를 구현해야 한다.즉 메소드를 재정의해야 하는데 안드로이드 스튜디오에서는 Ctrl + I 단축키로 쉽게 코드를 삽입할 수 있다. 1. 클래스를 정의한 부분으로 코드를 이동합니다. 2. 인터페이스를 상속받습니다. 그러면 인터페이스의 메소드가 구현되어있지 않기 때문에 클래서 선언부에 오류가 표시됩니다. 3. Ctrl + I 단축키를 입력하면 구현해야 할 인터페이스의 메소드가 표시됩니다. 메소드를 선택하여 Ok 버튼을 클릭합니다. 4. 아래의 코드와 같이 public void onClick(View v) 메소드 코드가 추가됩니다. 이제 클릭 이벤트에 대한 기능을 구현하면 됩니다. ※ 안드로이드 스튜디오의 Code > Implement Methods.. 2015. 5. 7.
안드로이드 스튜디오 - Override Method 코드 삽입하기 안드로이드 스튜디오에서는 부모클래스의 Override 가능한 메소드를 쉽게 생성 할 수 있습니다.클래스 소스내에서 단축키 Ctrl + O 를 입력하면 됩니다. 1. 클래스 소스내에 커서를 이동하고, Ctrl + O를 입력합니다. 2. Override 가능한 Method 목록 이 표시됩니다.※ 트리를 모두 접어서 보면, 위에서부터 해당 클래스가 상속받는 순서를 알수 있습니다. 3. Override 할 Method를 선택하고, OK 버튼을 클릭합니다. (멀티 선택도 가능합.) 4. 클래스 소스 내에 Override 된 Method 코드가 추가됩니다. ※ 안드로이드 스튜디오의 메뉴 Code > Override Methods... 를 선택하여도 동일한 기능을 수행합니다. 2015. 5. 6.
안드로이드 스튜디오 - 변수 이름 변경하기 코딩 때 선언한 변수가 여러 곳에 사용중이라면, 변수 이름을 각 코드별로 찾아서 변경해야 하는 번거로움이 있습니다.하지만 안드로이드 스튜디오의 Refactor > Rename기능을 사용하면 한번에 변수이름을 변경 할 수 있습니다. 1. 변경하고자 하는 변수이름에 커서를 이동합니다. 2. Shift + F6 키를 입력하면 변수 이름에 빨간색 박스가 생깁니다. 3. 변수 이름을 변경하면 사용되고 있는 변수 이름이 함께 변경되고, Enter 키를 입력하면 완료됩니다. ※ 팝업메뉴에서 Refactor > Rename 선택하여도 동일한 기능을 사용할 수 있습니다. 2015. 4. 29.
안드로이드 - 리스트뷰에 버튼넣기 리스트뷰를 구현할때 리스트 아이템에 버튼 등의 컴포넌트가 필요 할 경우가 발생합니다. 그리고 리스트뷰에 OnItemClickListener를 구현하여 이벤트 처리를 합니다. 리스트뷰의 OnItemClick 이벤트와 함께 리스트뷰 아이템의 버튼 클릭 이벤트도 함께 처리하기 위한 방법을 소개합니다. 1. 리스트뷰 아이템 Layout에 버튼을 추가합니다. - Layout XML에서 버튼은 코드 라인 21~25입니다. 2. 2.리스트뷰의 커스텀 어뎁터에 버튼의 이벤트를 추가합니다. - 버튼의 이벤트 관련 코드는 라인번호 20~27입니다. private class CustomAdapter extends ArrayAdapter { private ArrayList items; public CustomAdapter(C.. 2015. 4. 28.
안드로이드 - 도움말 파일(CHM) 안드로이드 도움말 파일입니다.안드로이드를 이해하고 개발하는데 많은 도움이 될 듯 합니다.https://code.google.com/p/android-chm-documentation/ 2015. 4. 25.
안드로이드 - 인터넷에 있는 이미지 Bitmap으로 만들기 안드로이드를 개발 할 때 OpenApi 등을 이용하여 이미지를 표시하고 합니다. 이런 경우 이미지 URL을 Bitmap으로 변경하여 ImageView에 표시하기 됩니다. 아래의 소스는 아미지 URL을 Bitmap으로 변경해주는 소스입니다. import java.io.BufferedInputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import android.graphics.Bitmap; import android.graphics.BitmapFactory; public class ImageHelper { public static Bitm.. 2015. 4. 24.
안드로이드 - 커스텀 리스트뷰(ListView) 만들기 개발자가 원하는 ListView를 생성하기 위해서는 아래와 같이 3가지 작업을 진행해야합니다.[1] ListView의 Item(리스트뷰에 표시될 Row 정보) Layout 생성.[2] Activit의 Layout 및 Java 소스에 ListView 생성.[3] 커스텀 Adapter 생성. 1. ListView의 Item Layout XML 생성(1) 리소스 폴더의 layout을 선택 후 마우스 우측 버튼을 클릭하면 팝업 메뉴가 표시되며, 여기서 New > XML > Layout XMLFile을 선택합니다. (2) Layout File Name을 입력하고 Root Tag는 수정하지 않고 Finish 버튼을 클릭합니다. (3) 추가한 Layout을 선택하면 디자인을 할수 있는 파렛트가 표시됩니다. (4) C.. 2015. 4. 24.
안드로이드 - 버튼 이벤트 처리 안드로이드의 버튼 이벤트 처리를 하기 위한 구현 방법은 3가지정도가 있습니다.[1] Activity 클래스에 인터페이스 View.OnClickListener를 상속 받아 구현하는 방법.[2] 버튼에 직접 View.OnClickListener를 구현하는 방법.[3] Activity에 버튼 클릭이벤트 메소드를 구현하여 Layout에서 Button에 이벤트를 연결하는 방법. 위의 3가지 방법 중에 가장 구현이 간단한 [3]번을 어떻게 구현하는지 보도록 하겠습니다. 1. Layout에 버튼을 추가합니다. 2. Activity에 버튼이 클릭될 때 수행 할 메소드를 정의합니다. - 메소드의 접근 지정자는 public으로 해야하고 리턴타입은 void이며 아규먼트는 View이어야 한다. 3. Project를 Rebui.. 2015. 4. 24.
애드몹(AdMob) There was a problem getting an ad response. ErrorCode: 1 안드로이드 앱에 애드몹 광고를 적용 아래와 같은 오류가 발생하는 경우가 있습니다.구글링을 하여 찾아보아도 해결을 못하다가 코드를 유심히 보니 adUnitId에 오타가 있어서 발생하였습니다.혹시 아래와 같은 오류가 발생하면 adUnitId​를 확인해보세요. ​08-05 21:25:57.861: W/Ads(4341): There was a problem getting an ad response. ErrorCode: 108-05 21:25:57.866: W/Ads(4341): Failed to load ad: 1 2015. 4. 24.
안드로이드 다국어 처리를 위한 리소스 폴더 이름 - 아래의 리소스 폴더 중 values로 시작하는 폴더들이 다국어 지원을 하기위한 리소스 XML이 존재해야한다. - 폴더 생성 규칙은 아래의 표를 참고하면 된다. 언어 (국가)리소스 폴더 이름 (언어)폴더 이름 (언어+지역)기본(Default)values 체코어 (체코)values-csvalues-cs-rCZ독일어 (독일)values-devalues-de-rDE독일어 (오스트리아)values-de-rAT독일어 (스위스)values-de-rCH독일어 (리히텐슈타인)valued-de-rLI영어 (미국)values-envalues-en-rUS영어 (영국)values-en-rGB영어 (캐나다)values-en-rCA영어 (호주)values-en-rAU영어 (뉴질랜드)values-en-rNZ영어 (싱가포르)val.. 2015. 4. 24.
안드로이드 - ScrollView & HorizontalScrollView 안드로이드 세로 또는 가로 스크롤 View. - 세로(상하 방향) 스크롤 : ScrollView 아래와 같이 ScrollView에 LinearLayout을 추가하고 orientation속성에 vertical을 지정하여 사용하면됩니다. - 가로(좌우 방향) 스크롤 : HorizontalScrollView 아래와 같이 HorizontalScrollView에 LinearLayout을 추가하고 orientation속성에 horizontal을 지정하여 사용하면됩니다. ​ 2015. 4. 24.
플레이 스토어 - 앱 업데이트가 거부됨 개발한 앱을 플레이 스토어에 업데이트를 하였습니다. 그리고 몇 분후에 "앱 업데이트 거부됨"이라는 메일을 받고 플레이 스토어의 개발자 콘솔에 확인을 하였습니다. 해당 앱에 아래와 같은 Youtube 서비스 약관을 위반하여 앱 업데이트가 거부되었다는 내용이었습니다. 앱에서 Youtube Open API를 이용하여 리스트를 보여주고, 해당 Yuotube URL로 이동하도록 개발이 되어있습니다. 이전 버전과 동일한 로직인데, 이번 경우에서만 앱 업데이트가 거부되었네요. (해당 버전 업데이트가 거부되었지만 이전 버전의 앱이 플레이 스토어에 표시되더군요.) 그래서 Youtube 관련 Activity를 삭제하고 플레이 스토어에 앱을 업데이트 후 몇 시간후에 위의 메세지가 사라졌습니다. 플레이 스토어 팀에 문의를 한.. 2015. 4. 24.
In-App 개발 시 Base64 인코딩 RSA 공개 키(base64EncodedPublicKey) 안도로이드에서 In-App을 개발시 base64EncodedPublicKey을 지정해야한다. (사용자가 구매한 아이템을 검색하기 위해서는 base64EncodedPublicKey가 필요하다.) 1. 개발한 앱을 Google Play 개발자 콘솔에 등록한다. 2. 앱의 "서비스 및 API" 탭에서 Base64 인코딩 RSA 공개 키를 base64EncodedPublicKey에 적용한다. 2015. 4. 24.
안드로이드 WebView 화면 전환 시 Reload 되는 현상 방지 안드로이드 개발시 WebView를 적용할 때 가로/세로로 화면이 전화되면 URL이 Reload 되는 현상이 발생합니다. (화면전환 시 Activity의 onCreate 메소드가 다시 호출되기 때문) [화면 전환시 Method 호출 순서] onSaveInstanceState() → onCreate() → onRestoreInstanceState() package com.example.webview; import android.os.Bundle; import android.app.Activity; import android.webkit.WebView; public class MainActivity extends Activity { WebView webview; @Override protected void o.. 2015. 4. 24.
This Android SDK requires Android Developer Toolkit version 21.1.0 or above. "Android SDK Manger"로 SDK를 Install/Update 후에 아래와 같이 이클립스 ADT(Android Developer Toolkit) Plugin을 최신으로 업데이트가 필요하다고 나오는 경우가 있습니다."This Android SDK requires Android Developer Toolkit version 21.1.0 or above." 메뉴의 Help > Check fro Updates를 수행해도 해결되지 않는다면 다음과 같이 해보세요. 1) 이클립스의 메뉴 Help > Install New Software... 선택 2) 이클립스 Install 화면에서 Work with에 "https://dl-ssl.google.com/android/eclipse/" 입력 후 ADD 버튼 .. 2015. 4. 24.
Android 개발 환경 JDK(Java Development Kit) 설치 JDK 다운로드 아래의 URL에서 JDK를 다운로드합니다. http://www.oracle.com/technetwork/java/javase/downloads/index.html JDK 설치 다운로드 받은 JDK 설치파일을 실행합니다. JDK 설치 폴더를 변경할 수 있습니다. JDK 설치가 완료되었습니다. Eclipse + ADT 설치 이전에 Android 개발환경을 구축하기 위해서는 Eclipse를 다운로드 하고, ADT를 다운로드 하여 설치 하던지 아니면 Eclipse에서 ADT를 설치해야 했습니다. 이제는 Android 개발자 사이트에서 Eclipse + ADT를 다운로드하여 개발환경을 구축 할 수 있습니다. Eclipse + ADT 다운로드 아래.. 2015. 4. 24.
안드로이드 스튜디오(Android Studio) - 이클립스 프로젝트 마이그레이션 1. 안드로이드 스튜디오를 오픈시킨다. 2. 프로젝트가 열려있다면 File > Close Project 메뉴를 이용하여 프로젝트를 닫는다. 3. Quick Start의 메뉴 중 Import Non-Android Studio project를 선택한다. 4. 이클립스에서 생성된 프로젝트를 선택한다.(단 프로젝트 Root폴더를 선택한다.) 5. 안드로이드 스튜디어 프로젝트의 경로를 지정한다. 6. Finish 버튼을 클릭하여 마이그레이션을 진행한다. 7. 아래와 같이 마이그레이션 진행 상태가 표시된다 8. 이클립스 프로젝트가 안드로이드 스튜디오 프로젝트로 마이그레션이 완료된다. 마이그레이션에 대한 결과를 확인 할 수 있다. 9. 타겟 안드로이드 SDK가 설치되어 있지 않다면 안드로이드 스튜디어 하단에 아래의 .. 2015. 4. 24.
안드로이드 스튜디오 - 최근 프로젝트(Recent Projects) 목록 삭제 안드로이드 개발 시 이것저것 테스트를 하여 안드로이드 스튜디오의 최근 프로젝트(Recent Projects)가 많이 늘어나는 경우가 있다.이런 경우 아래와 같이 하면 모든 최근 프로젝트가 삭제된다. 1. 안드로이드 스튜디오의 메뉴인 File > Reopen Porject > Clear List를 클릭하면 모든 최근 프로젝트가 삭제된다. 2. 아래와 같이 최근 프로젝트(Recent Projects)의 목록이 삭제된 것을 확인 할 수 있다. 2015. 4. 24.