Language (30)

안드로이드 애니메이션(Android Animation) Sample

안드로이드에서 XML 파일을 통해서 애니메이션 효과를 줄 수 있다. 인식이 가능한 anim 디렉터리를 생성 후 애니메이션을 수행할 XML 파일을 생성해주면 된다. # [New Resource Directory]를 통해서 app/res/anim 폴더를 생성 # MainActivity.javapackage com.example.wookoa.wookoa_16; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import and..

Language/Android Studio | 2017.10.10 21:09

Android SeekBar Sample

안드로이드 시스템에서는 설정 값 따위를 드래그로 조작할 수 있는 SeekBar라는 객체를 손쉽게 생성하고 제어할 수 있다. 생성 방법은 아래의 예제와 같다. # MainActivity.javapackage com.example.wookoa.wookoa_15; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.EditText; import android.widget.SeekBar; public class MainActivity extends AppCompatActivity { EditText editText = null; @Override protected void onCreate(B..

Language/Android Studio | 2017.10.10 20:38

Android ProgressBar(Horizontal, Dialog) Sample

안드로이드 시스템에서 프로그레스바를 출력하는 간단한 예제다. 현재 포스팅 시점에서 Dialog Progress Bar는 Modal 대화상자 기반이기 때문에 사용자와 상호작용을 떨어트린다는 이유로 기능이 Deprecated 되었다. 아예 Progress Bar를 엑티비티에 추가하던지 Notification으로 구현하라는 가이드가 있다. 당장은 사용하지 못하는 기능은 아니니 Dialog Progress Bar 예제도 같이 첨부한다. Deprecated url: https://developer.android.com/reference/android/app/ProgressDialog.html # MainActivity.javapackage com.example.wookoa.wookoa_15; import andr..

Language/Android Studio | 2017.10.10 02:29

안드로이드 스낵바(Android Snackbar) Sample

안드로이드 스낵바 호출하는 방법은 Toast 메시지와 동일하지만 외부 라이브러리를 추가해서 사용이 가능하다. [File]-[Project Structure]를 클릭한 뒤, app의 Dependencies 탭에서 추가가 가능하다. 추가할 라이브러리는 아래의 사진과 같이 [com.android.support.design (com.android.support.design:xx.x.x)]를 추가하면 된다. 시기에 따라 해당 라이브러리 버전은 계속 상향된다. 라이브러리만 추가한다면 아래의 소스와 같이 한줄만 추가해서 스낵바를 호출할 수 있다. # MainActivity.javapackage com.example.wookoa.wookoa_14; import android.os.Bundle; import androi..

Language/Android Studio | 2017.10.09 22:15

안드로이드 커스텀 토스트: Android Custom Toast Sample

안드로이드 시스템에서 얼럿 창 역할을 수행하는 Toast 객체에 대한 커스터마이징 소스 셈플이다. 디자인 소스를 XML 형태로 생성한 뒤 Toast 객체에 입혀주는 형식이다. # MainActivity.javapackage com.example.wookoa.wookoa_13; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.w..

Language/Android Studio | 2017.10.09 19:27

Android Keydown Sample

안드로이드에서 Key Down 이벤트는 간단한 방법으로 처리가 가능하다. 사용자가 선택한 버튼을 식별하기 위해 'KEYCODE'로 시작하는 상수(Constant) 값을 불러와서 사용할 수 있다. 아래의 예제는 뒤로가기 버튼을 두번이상 클릭했을 때 프로그램을 종료한다. # MainActivity.javaint index = 0; @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == event.KEYCODE_BACK){ if(index == 0){ Toast.makeText(this, "한번 더 클릭 시 종료 됩니다.", Toast.LENGTH_LONG).show(); index++; return false; } els..

Language/Android Studio | 2017.10.03 16:25

Android TouchListener, GestureDetector Sample

안드로이드 시스템에서 사용자의 클릭(Touch)을 감지하는 방법은 두가지가 존재한다. 기본적으로 사용하는 TouchListener에 GestureDetector를 사용하느냐 하지 않느냐로 구분할 수 있다. 아래의 예제는 touchView, gestureView에서 각각의 모션을 감지하는 셈플이다. # MainActivity.javapackage com.example.wookoa.wookoa_11; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.View; imp..

Language/Android Studio | 2017.10.03 15:36

안드로이드 위험 권한 부여 Sample

안드로이드에서 마시멜로우 이상 버전에서 관리하고 있는 위험 권한에 대한 셈플이다. 앱이 실행될때 권한여부를 체크 한 뒤 권한이 없을 경우에 권한을 부여받을 수 있도록 Alert 창을 띄워준다. # MainActivity.javapackage com.example.wookoa.wookoa_10; import android.Manifest; import android.content.pm.PackageManager; import android.support.annotation.NonNull; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; import android.support.v7.ap..

Language/Android Studio | 2017.10.01 23:29

Android Broadcast SMS Receiver Sample

안드로이드에서 브로드케스트 중 SMS를 수신받아서 발신자, 내용, 날짜 등의 정보를 얻어오기 위한 셈플 # SMSReceiver.javapackage com.example.wookoa.wookoa_10; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.telephony.SmsMessage; import android.util.Log; import java.util.Date; public class SMSReceiver extends BroadcastR..

Language/Android Studio | 2017.09.28 02:01

HP-UX 장비와 Java(JVM) 시간 차이 발생

서버 장비 중 HP-UX 장비와 관련된 내용이다. 서버의 System에서 날짜 값을 받아와서 처리하는 것이 일반적인 소프트웨어지만, JDK 1.3 상위 버전 부터는 Java의 날짜 값을 JVM Hotspot에서 관리하도록 변경 되었다. 그렇기 때문에 System과 Java의 날짜 값이 상이하게 되는 현상이 발생한다. 날짜 값에 대한 관리 포인트가 이원화 되었으니, 당연히 일치하지 않을 수 있는 현상이다. 날짜 값에 차이가 발생하면 치명적인 시스템은 필수적으로 처리를 해줘야 한다. Java의 날짜 값을 System의 날짜 값으로 사용하도록 아래와 같이 Java option을 지정해 주면 된다. -XX:+UseGetTimeOfDay -XX:+UseHighResolutionTimer 위와 같은 Java Opt..

Language/Java | 2017.09.17 18:47