2012-05-13 2 views
0

와 나는 사용자에 대한 몇 가지 textviews을 표시하는 응용 프로그램을 개발하고 있어요, 그리고 내가리스트 뷰에서 선택한 항목에 따라 정보를 배열의 텍스트를 저장하고로드 할 것이라고 생각안드로이드은 StringArray은의 setText

각은 StringArray 이름과 4 개의 항목이 있습니다. if 문을 사용하여 사용할 배열을 확인한 다음 그에 맞게 텍스트를 설정합니다.

LogCat은 저에게 FATALEXCEPTION을주었습니다. 활동에 액세스하려고하면 프로그램이 바로 닫힙니다.

사용 된 코드

if (s.equals("A_DuGamla")) { 
    String[] banan_arr = getResources().getStringArray(R.array.hello); 
    songname.setText(banan_arr[0]); 
    lyricsby.setText(banan_arr[1]); 
    melody.setText(banan_arr[2]); 
    lyrics.setText(banan_arr[3]); 
} else if (s.equals("A_Kungs")) { 
// And so on.. 

그리고은 StringArray 사전에

<string-array name="hello"> 
    <item>Visa</item> 
    <item>Text</item> 
    <item>Melodi</item> 
    <item>Text</item> 
</string-array> 

감사

UPDATE 오류 로그

05-13 21:05:20.771: E/AndroidRuntime(25903): FATAL EXCEPTION: main 
05-13 21:05:20.771: E/AndroidRuntime(25903): java.lang.RuntimeException: Unable toinstantiate activity ComponentInfo{se.noxious.visboken/se.noxious.visboken.R1_TradVisor}: java.lang.NullPointerException 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1743) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1851) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.ActivityThread.access$1500(ActivityThread.java:132) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1038) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.os.Handler.dispatchMessage(Handler.java:99) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.os.Looper.loop(Looper.java:150) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.ActivityThread.main(ActivityThread.java:4277) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at java.lang.reflect.Method.invokeNative(Native Method) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at java.lang.reflect.Method.invoke(Method.java:507) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at dalvik.system.NativeStart.main(Native Method) 
05-13 21:05:20.771: E/AndroidRuntime(25903): Caused by: java.lang.NullPointerException 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.preference.PreferenceManager.getDefaultSharedPreferencesName(PreferenceManager.java:356) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.preference.PreferenceManager.getDefaultSharedPreferences(PreferenceManager.java:351) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at se.noxious.visboken.R1_TradVisor.<init>(R1_TradVisor.java:19) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at java.lang.Class.newInstanceImpl(Native Method) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at java.lang.Class.newInstance(Class.java:1409) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.Instrumentation.newActivity(Instrumentation.java:1040) 
05-13 21:05:20.771: E/AndroidRuntime(25903): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1735) 
05-13 21:05:20.771: E/AndroidRuntime(25903): ... 11 more 
+0

logcat – 5hssba

+0

에서 오류를 게시하십시오. 내 눈에는별로 말하지 않습니다./ – Noxious

+0

'R1_TradVisor'생성자 (19 번째 줄)에서 존재하지 않는 이름으로 환경 설정을 찾으려고합니다.). 그러면 생성자는 어떻게 생겼을까요? –

답변

0

로그 캣의 핵심 라인은

입니다
at se.noxious.visboken.R1_TradVisor.<init>(R1_TradVisor.java:19) 

파일 R1_TradVisor.java에서 19 번째 줄을 확인하십시오. 그 위치는 오류입니다. 해당 라인에서 다루는 객체는 모두 null (NullPointerException)입니다.

+0

감사합니다. 제 문제는 oncreate 메소드에서 너무 늦은'setupVars()'메소드를 선언했기 때문에 그것이 작동하지 않는 이유가 그것의 참조를 알지 못했던 것입니다. 또한 나는 logcat에 관해 알았다 :) 환호 – Noxious