본문 바로가기

나의 플랫폼

[Android] ImageView 에서 AnimationDrawable 설정 기본적으로 아래와 같이 ImageView의 background나 src에 Animation 되어 있는 xml을 넣어두면문제 없이 애니메이션이 동작이 되었습니다. drawable_animation.xml layout.xml 이렇게 하면 왠만한 폰에서 동작이 잘 이뤄 집니다.하지만!!! 넥서스 시리즈 등 몇개의 폰에서는 애니메이션 효과가 나지 않는 것을 확인 할 수 있습니다.이건 AnimationDrawable을 start 해주지 않아서 발생한 문제 입니다. 소스에 아래와 같은 코드를 추가 합니다.ImageView ani = (ImageView) findViewById(R.id.ani); AnimationDrawable frameAnimation = (AnimationDrawable) ani.getDrawa.. 더보기
[Android] TextSize에서 sp와 dp를 사용할 때! TextSize를 설정할 때, 항상 전 sp를 사용 했습니다. sp는 글자 크기를 정의해주는 수치라고 알고 있었기 때문입니다. 하지만 여기서 꼭! 알고 가셔야 할 점이 있습니다. sp는 안드로이드 시스템 글자 크기에 적용 된다!!! 위 말이 무슨 말 이냐 하면, 안드로이드 설정 -> 디스플레이 -> 글자크기 로 이동을 하면 작게 부터 아주 크게 까지 앱 외적으로 글자 크기를 조절 할 수 있습니다. (연령층이 높으신 분을 위해 만들어 놓은 걸로 알고 있습니다.) 이 부분을 변경할 경우! sp로 텍스트 사이즈가 정의 되어 있으면, 그 설정에 따라 앱 텍스트도 커져 버려 UI가 깨저버리는 현상이 발생 합니다. 만약, 그 글자크기에 따라 앱 UI를 변경하시는 분들은 신경쓰지 않으셔도 됩니다. 저 같이 글자 크기.. 더보기
[Android] Toast 글씨 사이즈 변경 Toast toast = Toast.makeText(context, "", Toast.LENGTH_SHORT); ViewGroup group = (ViewGroup) mToast.getView(); TextView messageTextView = (TextView) group.getChildAt(0); messageTextView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 15);위와 같이 하면 Toast가 15dip 만큼 텍스트 사이즈가 변경 됩니다. 이 외적으로 설정을 넣을 수 있겠죠? ㅎ ## 참고 사항커스텀 토스트 : http://developer.android.com/guide/topics/ui/notifiers/toasts.html#CustomToastView #.. 더보기
cannot be cast to android.widget.HeaderViewListAdapter mListView.addFooterView(mFooterView); if (Build.VERSION.SDK_INT 더보기
[Android] View 위치 및 사이즈 알아 내기 (전체 레이아웃 View).getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { @Override public void onGlobalLayout() { // 여기 에서 찾고 하는 View의 사이즈와 위치 함수를 호출 하면 됩니다. } }); ## 이블로그는 어디까지는 찾았던 부분을 잊지 않기 위해 올려놓은 것 입니다. 내용이 부실해도 이해해 주시길 바랍니다. 더보기
[Android] Unable to execute dex: method ID not in [0, 0xffff]: 65536 Unable to execute dex: method ID not in [0, 0xffff]: 65536 위와 같은 에러는 안드로이드에서 빌드시 메소드 갯수 제한(65K) 이 되어 있기 때문에 이 이상인 경우 빌드를 막아놓아서 발생한 것입니다.이부분을 피하기 위해 안드로이드 에서는 MultiDex를 지원해주고 있는데요. 지금 부터 MultiDex를 설정하는 방법을 알려 드리겠습니다. 1. app/build.gradle 에 아래 소스를 추가 시킵니다.defaultConfig { ... // Enabling multidex support. multiDexEnabled true } dependencies { compile 'com.android.support:multidex:1.0.0' }참고 : http:/.. 더보기
[Android] cannot merge new index xxxxx into a non-jumbo instruction 안드로이드 개발을 할 때, Library를 많이 사용할 경우 아래와 같은 에러가 발생하며 빌드가 되지 않습니다. cannot merge new index xxxxx into a non-jumbo instruction 이건 dex index를 초과해서 발생한 에러 라고 합니다.아래 방법 대로 해결 하시면 빌드가 잘 됩니다. [Android studio 사용시] 참고 : http://stackoverflow.com/questions/30515209/dexindexoverflowexception-cannot-merge-new-index-65772-into-a-non-jumbo-instruc I have tried to set jumboMode in gradle for my project, it seems ab.. 더보기
[Android] Https Setting with Volley 아래 소스 같이 newSslSocketFactory 함수를 넣어서 추가 하면 됩니다.인증서를 만드는 부분과 설정은 아래 내용을 참고 해주세요. public RequestQueue getRequestQueue() { if (mRequestQueue == null) { // getApplicationContext() is key, it keeps you from leaking the // Activity or BroadcastReceiver if someone passes one in. mRequestQueue = Volley.newRequestQueue(mCtx.getApplicationContext(), new HurlStack(null, newSslSocketFactory())); } return mR.. 더보기