제가 탭에다가 일반 linearview가 있는 탭하고 listview있는 탭을 같이 만들려고 합니다.

 

근데 리스트뷰로 넘어가면 오류가 뜨네요.

 

어디서 문제인지 알고 싶습니다.

 

 package chunu.chunu.chunutalk;

import java.util.ArrayList;

import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TabHost;
import android.widget.TextView;

 

public class ChunutalkActivity2 extends Activity {
    /** Called when the activity is first created. */
    EditText edittext;
    ListView list;
    ArrayList<ListViewContactsBook> contacts;
    ContactsAdapter adapter;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main2);
        edittext=(EditText)findViewById(R.id.EditText1);
        TabHost tabhost=(TabHost)findViewById(R.id.tabhost);
        tabhost.setup();
        TabHost.TabSpec spec;
        spec=tabhost.newTabSpec("채팅 창");
        spec.setContent(R.id.tab1);
        spec.setIndicator("채팅 창");
        tabhost.addTab(spec);
        spec= tabhost.newTabSpec("리스트");
        spec.setContent(R.id.tab2);
        spec.setIndicator("리스트");
        tabhost.addTab(spec);
        tabhost.setCurrentTab(0);
       
        list=(ListView)findViewById(R.id.listview1);
        contacts = new ArrayList<ListViewContactsBook >();
        contacts.add(new ListViewContactsBook("가나다","010-1111-1111"));
        adapter = new ContactsAdapter(contacts);
        list.setAdapter(adapter);

        }
       class ContactsAdapter extends BaseAdapter {
       private ArrayList<ListViewContactsBook> object;
       public ContactsAdapter(ArrayList<ListViewContactsBook> object){
        super();
        this.object = object;
       }
       public int getCount(){
           return object.size();
       }
       public Object getItem(int position){
        return null;
       
       }
       public long getItemId(int position){
        return 0;
       }
       public View getView(int position, View convertView, ViewGroup parent){
        ViewHolder holder;
        if(convertView == null){
         LayoutInflater inflater = LayoutInflater.from(ChunutalkActivity2.this);
         convertView = inflater.inflate(R.layout.listrow,parent,false);
         holder = new ViewHolder();
         holder.txtName = (TextView)convertView.findViewById(R.id.txt_name);
         holder.txtName = (TextView)convertView.findViewById(R.id.txt_number);
         convertView.setTag(holder);
        }
        else{
         holder = (ViewHolder)convertView.getTag();
        }
        String name = object.get(position).getName();
        String phoneNumber = object.get(position).getPhoneNumber();
        holder.txtName.setText(name);
        holder.txtNumber.setText(phoneNumber);
       
        return convertView;
         
       }
       }
       static class ViewHolder {
        TextView txtName;
        TextView txtNumber;
       
       }
    }

       
   


로그 캣도 첨부

 

01-11 09:35:04.271: E/AndroidRuntime(596): FATAL EXCEPTION: main
01-11 09:35:04.271: E/AndroidRuntime(596): java.lang.NullPointerException
01-11 09:35:04.271: E/AndroidRuntime(596):  at chunu.chunu.chunutalk.ChunutalkActivity2$ContactsAdapter.getView(ChunutalkActivity2.java:82)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.AbsListView.obtainView(AbsListView.java:2033)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.ListView.makeAndAddView(ListView.java:1772)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.ListView.fillDown(ListView.java:672)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.ListView.fillFromTop(ListView.java:732)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.ListView.layoutChildren(ListView.java:1625)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.AbsListView.onLayout(AbsListView.java:1863)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java:1617)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.onLayout(LinearLayout.java:1401)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.FrameLayout.onLayout(FrameLayout.java:431)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1486)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.onLayout(LinearLayout.java:1399)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.FrameLayout.onLayout(FrameLayout.java:431)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.FrameLayout.onLayout(FrameLayout.java:431)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1486)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.LinearLayout.onLayout(LinearLayout.java:1399)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.widget.FrameLayout.onLayout(FrameLayout.java:431)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.View.layout(View.java:11158)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewGroup.layout(ViewGroup.java:4197)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1462)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2382)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.os.Handler.dispatchMessage(Handler.java:99)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.os.Looper.loop(Looper.java:137)
01-11 09:35:04.271: E/AndroidRuntime(596):  at android.app.ActivityThread.main(ActivityThread.java:4340)
01-11 09:35:04.271: E/AndroidRuntime(596):  at java.lang.reflect.Method.invokeNative(Native Method)
01-11 09:35:04.271: E/AndroidRuntime(596):  at java.lang.reflect.Method.invoke(Method.java:511)
01-11 09:35:04.271: E/AndroidRuntime(596):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
01-11 09:35:04.271: E/AndroidRuntime(596):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
01-11 09:35:04.271: E/AndroidRuntime(596):  at dalvik.system.NativeStart.main(Native Method)
 그리고 로그 캣 어떻게 보는지 좀 알려주세요. 초짜라서 잘 모릅니다.

 

공지사항은 읽었습니다.