본문 바로가기
[Android/안드로이드] Rating Bar ( 레이팅 바 ) - 별점 주는 VIew ( widget ) 안녕하세요 돼지왕 왕돼지입니다. 오늘은 Rating Bar ( 레이팅 바 ) 에 대해 알아 보겠습니다. 레이팅 바 ( Rating Bar ) : 별점을 표시하거나 입력 받는 View. android:isIndicator="true"/> RatingBar rb = (RatingBar)findViewById(R.id.ratingbar); rb.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener(){ public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser){ // To Do } } 로그인 없이 추천 가능합니다. 손가락 꾸욱~ 2012. 2. 22.
[Android/안드로이드] Scroll View ( 스크롤 뷰 ) 사용 방법. 안녕하세요 돼지왕 왕돼지입니다. 오늘은 ScrollView ( 스크롤 뷰 ) 를 사용하는 방법에 대해 알아 보겠습니다. xml layout 정의 일반 ScrollView 는 상하 방향의 scroll view 입니다. 이 때 ScrollVIew의 Child 는 Layout 류여야만 한다. HorizontalScrollView 는 좌우 방향의 scroll view 입니다. APIs void setScrollBarStyle (int style) style = SCROLLBARS_INSIDE_OVERLAY : 패딩 없이 내용물 안쪽에 배치 = SCROLLBARS_INSIDE_INSET : 패딩 추가, 안쪽 배치 = SCROLLBARS_OUTSIDE_OVERLAY : 패딩 없이 가장자리 배치. = SCROLLBA.. 2012. 2. 22.
[Android/안드로이드] WebView ( 웹뷰 ) 사용 방법. 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 WebView 의 사용 방법에 대해 알아보겠습니다. 웹뷰 ( WebView) - 웹 페이지를 보여주는 위젯 - 웹뷰를 사용하려면 Internet 사용 권한 신청이 필수다. ( @Manifeste ) // 물론 인터넷 연결을 안 하려면 필요없긴 하다.. WebView mWeb = (WebView)findViewById(R.id.web); mWeb.setWebViewClient(new MyWebClient()); WebSettings set = mWeb.getSettings(); set.setJavaScriptEnabled(true); set.setBuiltInZoomControls(true); mWeb.loadUrl("http://www.google.com"); m.. 2012. 2. 22.
[Android/안드로이드] File I/O ( 파일 입출력 ) 방법. 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 File I/O ( 파일 입출력 ) 방법에 대해 알아보겠습니다. 사실 이 주제는 안드로이드로 기능보다는 Java 기본이긴 합니다만, 안드로이드에서 자바를 사용하니 당연히 알아야겠죠? 파일 입출력 -> 파일 입출력은 예외발생 확률이 높기 때문에 반드시 try - catch 문을 사용해야 한다. -> 스트림류는 가비지 컬렉터에 의한 정리대상이 아니기 때문에 사용이 끝나면 꼭 close를 해주어야 한다. FileOutputStream openFileOutput (String name, int mode) FileInputStream openFileInput (String name) mode = MODE_PRIVATE : 혼자만 사용하는 모드 = MODE_APPEND : .. 2012. 2. 22.
[Android/안드로이드] File Sharing ( 파일 공유 ) 방법 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 다른 App 들과 File 을 공유 ( share ) 하는 방법에 대해 알아보겠습니다. 파일 공유에 대한 이야기. : 안드로이드에서 파일은 기본적으로 생성한 프로그램만 액세스 할 수 있습니다. 다른 응용 프로그램과 파일을 공유하려면 여러 가지 조건을 만족해야 하죠. 1. 퍼미션에서 (예: -rw-rw-r--) 가장 마지막, 외부에 대한 권한 설정이 되어 있어야 한다. 2. 사용하려 할 떄, 해당 파일을 생성한 프로그램의 컨텍스트를 구해야 한다. Context createPackageContext(String packageName, int flags) -> 여기서 flag는 CONTEXT_IGNORE_SECURITY 로 열어야 한다. (아니면 보안상 이유로 예외가 .. 2012. 2. 22.
[Design Pattern/Java] equals 메소드를 오버라이드 할 때는 hashCode 메소드도 항상 같이 오버라이드 하자. hashCode 를 왜 override 해줘야 하는데? hashCode 메소드를 제대로 오버라이드 하지 않아 코드 결함이 생기는 경우가 흔합니다. equals 메소드를 오버라이드 하는 모든 클래스에서는 반드시 hashCode 메소드도 오버라이드 해야 합니다. 그렇지 않으면, Object.hashCode 메소드의 보편적 계약을 위반하게 되므로, HashMap 과 HashSet 및 HashTable 을 포함하는 모든 해시( hash ) 기반의 컬렉션들과 우리 클래스를 같이 사용할 때 우리 클래스가 올바르게 동작하지 않을 가능성이 매우 높습니다. hashCode 의 보편적 계약사항이 뭐길래? 1. 애플리케이션 실행 중에 같은 객체에 대해 한 번 이상 호출되더라도 hashCode 메소드는 같은 정수를 일관성 있.. 2012. 2. 22.
[Design Pattern/Java] Equals 메소드를 오버라이딩 할 때는 보편적 계약을 따르자. 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 Equals 메소드를 오버라이딩 할 떄는 보편적 계약을 따르자. 라는 주제로 이야기해보고자 합니다. 이 글은 "Effective Java" 의 글을 요약 정리한 것입니다. Introduction. Object 의 function 들은 기본적으로 sub class 에서 override 하여 사용 하도록 설계하였습니다. 하여, 모든 Object 들은 기본적으로 Object 의 function 들을 override 하여 사용하는 것이 좋습니다. 하지만, equals 메소드를 오버라이딩 할 때는 보편적 계약을 따라야 합니다. Instance 의 동일 여부를 판정하는 equals 메소드의 오버라이딩은 간단한 것 같지만, 잘못되는 경우가 많아서 참담한 결과를 초래할 수 있기.. 2012. 2. 22.
[Android/안드로이드] SD Card 사용하기. ( 접근하기 ) 안녕하세요 돼지왕 왕돼지입니다. 오늘은 SD Card ( External Storage ) 를 사용하는, 혹은 접근하는 방법에 대해서 함께 알아보겠습니다. Permission. SD 카드의 파일을 읽는 것은 아무런 Permission 없이 가능합니다만, 파일을 쓰는 것은 Permission 이 필요합니다. Manifest에 다음과 같이 기술해줍니다. APIs static String getExternalStorageState() : SD 카드의 현재 상태 조사 MEDIA_MOUNTED / MEDIA_UNMOUNTED static File getExternalStorageDirectory() : SD 카드가 마운트된 경로. 보통 /sdcard static File getRootDirectory() stat.. 2012. 2. 22.
[Android/안드로이드] 에뮬레이터와 시뮬레이터의 차이. ( Difference between Emulator and Simulator ) 안녕하세요 돼지왕 왕돼지입니다. 오늘은 에뮬레이터( Emulator )와 시뮬레이터( Simulator )의 차이에 대해 알아보겠습니다. 에뮬레이터 ( Emulator ) 에뮬레이터는 현재 사용중인 시스템 안에 다른 시스템을 완벽하게 "재현" 한 것을 말한다. 안드로이드 프로그래밍을 하다보면 AVD ( Android Virtual Device ) 를 쓰게 되는데 이것이 바로 에뮬레이터이다. 안드로이드 기기들은 ARM 계열의 CPU 를 사용하기 때문에 Intel x86 이나 AMD 의 CPU 명령어 집합을 사용하지 못한다. 다시 말해, 안드로이드용 프로그램 ( apk ) 을 ARM 이 아닌 CPU 에서는 실행할 수 없다는 것이다. 에뮬레이터가 ARM 명령어를 해당 CPU에 맞도록 translate 하여 ".. 2012. 2. 22.
반응형