안드로이드 개발 질문/답변
(글 수 45,052)
public class STZAppActivity extends Activity { ListView listView; @Override protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.applist); listView = (ListView)findViewById(R.id.listView1); PackageManager packagemanager = this.getPackageManager(); List< ApplicationInfo > appList = packagemanager.getInstalledApplications( 0 ); Log.d("", ""+ appList.size()); ArrayList<String> list = new ArrayList<String>(); for (int i = 0; i < appList.size(); i++) { list.add( appList.get(i).loadLabel(packagemanager).toString());
ArrayAdapter<String> adapter; adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list); listView.setAdapter(adapter); } listView.setOnItemClickListener(mainSelect); } private OnItemClickListener mainSelect = new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView av, View v, int position, long id) { Log.e("",""+listView.getTag(position)); Toast.makeText(getApplicationContext(), listView.getTag(position).toString(), Toast.LENGTH_SHORT).show();
} }; }
04-02 18:23:35.750: E/AndroidRuntime(7023): FATAL EXCEPTION: main 04-02 18:23:35.750: E/AndroidRuntime(7023): java.lang.NullPointerException 04-02 18:23:35.750: E/AndroidRuntime(7023): at com.qnsolv.android.nfc.st.STZAppActivity$1.onItemClick(STZAppActivity.java:45) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.widget.AdapterView.performItemClick(AdapterView.java:292) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.widget.AbsListView.performItemClick(AbsListView.java:1058) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.widget.AbsListView$PerformClick.run(AbsListView.java:2514) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.widget.AbsListView$1.run(AbsListView.java:3168) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.os.Handler.handleCallback(Handler.java:605) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.os.Handler.dispatchMessage(Handler.java:92) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.os.Looper.loop(Looper.java:137) 04-02 18:23:35.750: E/AndroidRuntime(7023): at android.app.ActivityThread.main(ActivityThread.java:4340) 04-02 18:23:35.750: E/AndroidRuntime(7023): at java.lang.reflect.Method.invokeNative(Native Method) 04-02 18:23:35.750: E/AndroidRuntime(7023): at java.lang.reflect.Method.invoke(Method.java:511) 04-02 18:23:35.750: E/AndroidRuntime(7023): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 04-02 18:23:35.750: E/AndroidRuntime(7023): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 04-02 18:23:35.750: E/AndroidRuntime(7023): at dalvik.system.NativeStart.main(Native Method)왜널포인트가 뜨는걸까요 ??
listview 의 tag 가 어디에 설정되어 있나요?
tag 는 그렇게 쓰는게 아니랍니다
아래와 같이 지정해보세요
오타같은게 있을 수도 있으니 수정해서 쓰세요
메쏘드를 다 외우고 쓰는게 아니라서...