본문 바로가기

안드로이드 개발4

버튼 누름 효과를 만드는 2가지 방법 버튼이면 당연히 있어야할 누름효과! 눌렸을때와 누르지않았을때가 같다면 과연 버튼일까? 당연하지만 그래서 잃혀지기 쉬운 기능 버튼의 누름효과!! 안드로이드에서 기본적인 버튼은 누름효과가 있다. 하지만 나만의 예쁜 버튼을 만들려고 이미지를 넣으면 이런 효과는 사라진다. 이때 누름효과가 생기도록 하는 2가지 방법이 있다. 첫번째는 xml의 selector를 이용하는 것이다. res의 drawable 폴더에 button_selector.xml 파일을 만든다. 여기서 버튼의 일반이미지, 누름이미지를 다음과 같이 설정한다. 그리고 layout의 버튼에 selector를 적용한다. 두번째는 자바코드로 넣는 것이다. Button button = (Button)findViewById(R.id.Button); button.. 2015. 4. 19.
오로지 기울기 센서로만 가로세로 모드 체크하기 단말기를 가로 또는 세로모드로 고정시키고도 현재 가로로 눞여있는지 세로로 서있는지 알아봐야 할때가 있다. 이럴 때는 기울기 센서라고도 불리는 가속도 센서(Accelerometer Sensor)를 이용하면 간단하다. 아래는 세로모드에서 카메라로 사진을 찍었을 경우 단말기 상황(각도)에 맞게 사진을 회전시키는 예의 일부이다. mDegrees 각도로 사진을 회전시키면 된다. private SensorManager mSensorManager; private Sensor mAccSensor; private float mDegrees; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); se.. 2015. 2. 23.
안드로이드 앱 런칭후 데이터베이스 변경시 주의할점 단말기의 로컬 데이터베이스를 사용한 앱을 개발하다 보면 한번쯤은 겪게 되는것이 있다 바로 출시후 테이블 또는 필드추가, 내용추가변경이다 나도 처음에는 별생각없이 출시했다가 업데이트를 해야 하는데 디비를 바꾸어야 하는 상황이 있었다. 그래서 다 아시다시피 생성자에서의 버전을 전숫자보다 크게 넣고 onUpgrade() 에서 업데이트를 했다... 그런데 디비 버전이 한번이 아니라 여러번 바뀔경우 만약 사용자가 디비 1버전의 앱에서 사용하다가 오랬동안 사용을 안하고 곧바로 디비 3버전의 앱을 업데이트 받아 사용할경우 2버전의 디비변경사항도 적용해주어야 함을 늦게서야 깨달았다ㅎㅎ 당시에는 분명 디비 변경을 해줫는데 왜 그러나... 하고 엄청 심각했었는데 원인을 알고 나니 좀 허무했다ㅎㅎ 어잿든 아래와 같이 스위치.. 2014. 1. 20.
큰 배경이미지 사용시 OutOfMemoryError의 확실한 해결법 안드로이드 앱을 만들때 배경이미지를 넣어야 하는 경우 OutOfMemoryError에 직면하는 경우가 많다.. 특히 사이즈가 큰 배경이미지 일수록... 자주 발생한다... 즉, OutOfMemoryError는 이름처럼 이미지를 로딩할때 메모리가 부족해서 발생하는것이다... 이럴경우 그원인이 되는 이미지 사이즈 자체를 줄이거나 로딩할때 아래와 같이 사이즈를 줄여서 불러오면 일단 해결은 된다. BitmapFactory.Options options = new BitmapFactory.Options(); options.inSampleSize = 2; Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.opening, options); .. 2013. 10. 4.