전체 글 314

[안드로이드] 스트링으로 동적 값 적용하기

string.xml에 아래와 같이 작성을 하면, 동적인 값을 보여 주는 스트링을 만들 수 있다. 매번 스트링을 만드는 수고를 덜 수 있다. string파일 예) 08:%02d분, 09:%02d분, 10:%02d분 2%d는 두 자리수로 표기, 02%d는 01, 02, 03 처럼 표기 한다. 코드getString(R.string.test, Integer.parseInt(tempMinute), Integer.parseInt(tempMinute), Integer.parseInt(tempMinute));

[안드로이드] 프리퍼런스가 업데이트 안된다면?

말그대로 프리퍼런스(preference) summary가 없데이트 안 될 경우에는 어떻게 하느냐? 다른 화면을 갔다 올 경우에는 비교적 summary가 업데이트 잘 되지만, 한 화면에서 바로 바로 수정이 필요 할 경우에는 쉽지 않다. 만약, 잘 되다가 destory를 한 뒤 다시 들어 왔는데 이 때 부터 작동이 안된다면 ? 이전 글(BadTokenException)과 같은 내용의 해결 방법을 사용하면 된다. Preference를 static으로 만들어서 setSummary를 하면 된다. 어디서? onPreferenceChange(Preference pref, Object newValue) { 에서 받아온 pref로 pref.setSummary() 하지 말고 전역으로 선언해 놓고 하면 된다. 즉, publ..

[안드로이드] BadTokenException -is your activity running? 프리퍼런스에서 발생한다면?

이 에러는 참으로 갑자기 불쑥 나오기로 유명하다. 액티비티 종료 중에 컨텍스트를 사용하다가 잘 발생한다. android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@40b47bd8 is not valid; is your activity running? 1. 그래서 액티비티 종료 후에도 핸들러가 돌아 갈수도 있기에 갑자기 다이얼로그를 띄우는 등의 행동은 하지 말아야 할 것이다. 이럴때는 isFinishing()을 사용해서 예방 할 수 있다. 2. 또는 다른 액티비티와 연계되어서 발생 할 경우에는 getContext(), this.activity가 아닌 getParent()를 사용 하면 해결..

[말하는 시계] 전원키 두번, 근접센서, 잠금화면 위젯으로 언제 어디에서나 원하는 문장과 함께 시간을 말한다. (수면 중, 운전 중, 라이딩 중, 근무중, 설거지 중, 산책 중, 시각장애인)

내가 만드는 말하는 시계 무료! 구글 플레이로 받으러 가기 많은 분들의 관심 속에 내가 만드는 말하는 시계가 완전히 새로워 졌습니다. 무려 14가지 신 기능을 탑재하고 돌아왔습니다. 뿐만 아니라 완전히 무료 입니다. 언제 어디에서나 손 쉽게 시간을 확인 해보세요! 나의 생활이 편하고 즐거워 질 것입니다 ^^ 2.0.4버전에서는 전면 광고를 제거 하고 마시멜로우(6.0)버전에 최적화 되었습니다. ** 정말 사용법이 쉽습니다. (유치원생 부터 200세까지 누구나) 0. 시간 알림 문구를 내 마음대로 만들 수 있습니다. 1. 단말기를 뒤집거나 손바닥으로 카메라 부분(근접센서)을 가리면 현재 시간을 말로 해줍니다. 2. 전원 키(파워 키)를 두 번 연속으로 클릭하면 현재 시간을 말 해줍니다. 3. 홈화면 위젯 ..

CheckBoxPreference - check상태에 따라 활성, 비활성 바뀌게 하기

활성상태일때만 설정을 가능하게 하고픈 메뉴가 있을 것이다.체크박스프리퍼런스를 사용하고 있다면,이럴때 유용한 field가 android:dependency 이다. android:dependency 자리에 CheckBoxPreference의 key값을 넣어주면 별도 .java 코딩없이 xml파일 만으로도 아래와 같은 결과를 얻을 수 있다. [그림]정각알림 사용하기 설정이 check되지 않았을 때는 분 설정하기 메뉴가 비활성화되고,check되었을 때에는 분 설정하기 메뉴가 활성화 된다. -> [소스]

안드로이드 마지막 줄 버튼 정렬이 안된다면?

버튼을 맨 아래 쪽에 두 개를 배치 했는데 버튼의 크기가 한 쪽이 크다면? 아무리 찾아봐도 두 버튼이 다른 점이 없다면? 왼쪽 버튼 오른쪽 버튼 위와 같이 미세하게 차이가 나는 경우, 아무리 인터넷을 찾아도 나오지 않는다... 그러나 답은 간단하다. 두 버튼의 높이를 android:layout_height="match_parent" 로 하면 해결 된다.

[안드로이드 스튜디오] Plugin with id 'com.android.application' not found.

Gradle에서 이 에러가 나온다면 Plugin with id 'com.android.application' not found. build.gradle에buildscript { repositories { jcenter() // or mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:1.5.0' }} 를 추가 해주면 된다. 그래도 에러가 계속 난다면? 위 노랑이의 위치를 apply plugin: "com.android.application"바로 위로 옮기면 된다.