안드로이드 개발 질문/답변
(글 수 45,052)
제목 그대로 getCurrentFocus()로 얻은 뷰가 버튼인지 에디트텍스트인지 알아내려고 합니다.
어떤 방법을 사용하면 될까요?
2012.02.24 09:59:32
02-24 00:57:10.903: E/AndroidRuntime(597): FATAL EXCEPTION: main
02-24 00:57:10.903: E/AndroidRuntime(597): java.lang.IllegalStateException: Could not execute method of the activity
02-24 00:57:10.903: E/AndroidRuntime(597): at android.view.View$1.onClick(View.java:2072)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.view.View.performClick(View.java:2408)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.view.View$PerformClick.run(View.java:8816)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.os.Handler.handleCallback(Handler.java:587)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.os.Handler.dispatchMessage(Handler.java:92)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.os.Looper.loop(Looper.java:123)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.app.ActivityThread.main(ActivityThread.java:4627)
02-24 00:57:10.903: E/AndroidRuntime(597): at java.lang.reflect.Method.invokeNative(Native Method)
02-24 00:57:10.903: E/AndroidRuntime(597): at java.lang.reflect.Method.invoke(Method.java:521)
02-24 00:57:10.903: E/AndroidRuntime(597): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-24 00:57:10.903: E/AndroidRuntime(597): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-24 00:57:10.903: E/AndroidRuntime(597): at dalvik.system.NativeStart.main(Native Method)
02-24 00:57:10.903: E/AndroidRuntime(597): Caused by: java.lang.reflect.InvocationTargetException
02-24 00:57:10.903: E/AndroidRuntime(597): at com.android.kang.SamdasuActivity.myClickHandler(SamdasuActivity.java:369)
02-24 00:57:10.903: E/AndroidRuntime(597): at java.lang.reflect.Method.invokeNative(Native Method)
02-24 00:57:10.903: E/AndroidRuntime(597): at java.lang.reflect.Method.invoke(Method.java:521)
02-24 00:57:10.903: E/AndroidRuntime(597): at android.view.View$1.onClick(View.java:2067)
02-24 00:57:10.903: E/AndroidRuntime(597): ... 11 more
02-24 00:57:10.903: E/AndroidRuntime(597): Caused by: java.lang.NullPointerException
02-24 00:57:10.903: E/AndroidRuntime(597): ... 15 more
if(getCurrentFocus().getClass() == EditText.class){ Log.w("asdf","asdfd"); }else{ Log.w("xxxx","asdfd");}




getClass() 혹은 instanceof
ex1.
if(view.getClass() == EditText.class){
}
ex2.
if(view instanceof EditText){
}