나의 플랫폼 썸네일형 리스트형 [Android] Fragment 에서 getActivity를 사용시 NullpointerException 발생 Fragment에서 getActivity 함수를 이용할 수가 있습니다.Fragment는 Activity 내부에서 UI를 다양하게 표현하기 위한 용도 이므로,당연히 중요한 함수 입니다. 하지만, 가끔 getActivity 함수에서 NullPointerException이 발생 합니다. 저같은 경우는 onCreateView 함수에서 getActivity 함수를 이용 했었습니다. 테스트 시, 거의 발생 하지 않는 에러 입니다. 하지만, 앱을 등록 하고 사용자가 많아지면서 자주 눈에 띄게 됩니다. 그럼.. 어떻게 해야 할까요?? 아래는 StackOverFlow에서 나오는 답변 입니다. http://stackoverflow.com/a/40426450 onCreateView 대신 onActivityCreated 함수.. 더보기 [Kotlin] BindingAdapter 이용 하기 DataBinding을 이용해서 MVVM을 구현하시는 분들이 많으실꺼라 생각 됩니다.저 또한 열심히 공부중에 있는데요. 그 중에 Kotlin 에서 BindingAdapter를 어떻게 사용하는지 공유 해드릴까 합니다. 기본적으로 DataBinding에서 BindingAdapter가 어떻게 쓰이는지는 아래 내용을 참고 하시거나,구글링 해도 많은 자료 들이 있습니다.http://gogorchg.tistory.com/entry/AndroidDataBinding-ImageView-src%EC%97%90-%EC%97%B0%EB%8F%99-%ED%95%98%EA%B8%B0-%ED%95%A8%EC%88%98-%EC%97%B0%EA%B2%B0 ## Java public class ImageBindingModel { @B.. 더보기 [Annotation] 내가 생각하는 Annotation 요즈음 많이 사용되고 있는 Retrofit2 라이브러리나 Dagger 라이브러리를 보시면,Annotation을 이용하고 있는 것을 확인 할 수 있습니다. Retrofit은 Method에 @Get이나 @Post Annotation을 사용 하고,Dagger 같은 경우 Class에 @Module, Method에 @Provides 라는 Annotation을 사용 합니다. 그럼 어떻게 Annotation만 설정 해놨는데 자동적으로 제어가 가능 한 걸까?? https://medium.com/@ggikko/java-%EC%BB%A4%EC%8A%A4%ED%85%80-annotation-436253f395ad#.s04jpt1cw이 블로그를 보고 전 느낌을 받았습니다. 1. 클래스, 메소드, 매개변수등에 할당되는 특정 A.. 더보기 [Kotlin] 콜백함수 구현 Java에선 콜백 함수를 아래와 같이 많이 쓰입니다. // 콜백 함수 선언private interface OnStringCallback { void onCallback(String string); } private void testCallback(OnStringCallback callback) { callback.onCallback("hello callback"); } // 콜백 함수 실행testCallback(new OnStringCallback() { @Override public void onCallback(String string) { Log.d("Test","Called : "+string); } }); 위와 같이 콜백을 위한 interface를 선언 하고 해당 Interface의 함수를 통해서.. 더보기 [Kotlin] kotlin 프로젝트 생성 시, 참조할 만한 소스 Kotlin으로써 새로운 프로젝트를 시작하고자 할 때,참조할만한 괜찮은 소스가 있어서 공유 하고자 합니다. https://github.com/Plastix/Kotlin-Android-Boilerplate 소스 형태는 아래와 같다고 쓰여 있네요.LibrariesDagger 2 -> 의존 관계 주입(Dependency Injection) 라이브러리RxJava 2 and RxAndroid -> 요새 화두가 되고 있는 Reactive 라이브러리Retrofit 2 -> 네트워크 통신 라이브러리Picasso -> 이미지 로드 라이브러리 (전 Glide로 교체할 예정)Google Support Libraries -> 구글에서 지원해주는 라이브러리Testing LibrariesJUnitMockitoRequirement.. 더보기 [Kotlin] let을 이용한 Null 체크 val result: Boolean if (user != null) { result = write(user) } else { result = false }이런 케이스에서는 Kotlin에서는 다음과 같이 쓰는 것이 가능합니다.val result: Boolean = user?.let { write(it) } ?: false참고 : https://gist.github.com/Hazealign/1bbc586ded1649a8f08f#약간-특이한-부분 하지만, 위 소스에서 false가 아닌 {} 같이 구문을 이용하고자 한다면 어떻게 하면 될까요?? fun letTest(a: String?) { a?.let { Log.d("Test","letTest :: 1 : "+it) }.let { Log.d("Test","le.. 더보기 [Android] WebView 상에서 Intent Uri 실행 public class CustomWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if (url.startsWith("tel:")) { Intent call_phone = new Intent(Intent.ACTION_CALL); call_phone.setData(Uri.parse(url)); startActivity(call_phone); } else if (url.startsWith("sms:")) { Intent i = new Intent(Intent.ACTION_SENDTO, Uri.parse(url)); startActivity(i); } .. 더보기 [TensorFlow] TensorFlow를 윈도우에 설치하기 인공지능에 관심이 생기다 보니 자연스럽게 TensorFlow를 테스트 해보기 위해 윈도우에 설치를 했습니다. Docker를 이용하거나 가상 드라이브를 만들어서 Linux에 설치하거나 다양한 방법이 있는데요. 전 Android 개발자이다 보니 JetBrain 사 제품에 익숙해서 PyCharm을 이용해서 설치하는 방법을 올리고자 합니다. 1. 설치 파일 다운로드 Python3.5 : https://www.python.org/downloads/release/python-352/PyCharm : https://www.jetbrains.com/pycharm/download/#section=windowsAnaconda : https://www.continuum.io/downloads 위 사이트 가서 설치 파일을 모.. 더보기 이전 1 ··· 13 14 15 16 17 18 19 ··· 59 다음