Android:获取错误java.lang.NullPointerException

Android:获取错误java.lang.NullPointerException,android,android-tabhost,Android,Android Tabhost,我是android新手,我创建了一个项目。在我的活动中,我有ListView和Tabhost以及我的活动范围listactivity。当我运行我的项目时,它会给出错误 10-18 14:26:13.053: E/AndroidRuntime(278): FATAL EXCEPTION: main 10-18 14:26:13.053: E/AndroidRuntime(278): java.lang.RuntimeException: Unable to start activity Compo

我是android新手,我创建了一个项目。在我的活动中,我有ListView和Tabhost以及我的活动范围listactivity。当我运行我的项目时,它会给出错误

10-18 14:26:13.053: E/AndroidRuntime(278): FATAL EXCEPTION: main
10-18 14:26:13.053: E/AndroidRuntime(278): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.shareslab/com.example.shareslab.MessageList}: java.lang.NullPointerException
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.os.Handler.dispatchMessage(Handler.java:99)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.os.Looper.loop(Looper.java:123)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.ActivityThread.main(ActivityThread.java:4627)
10-18 14:26:13.053: E/AndroidRuntime(278):  at java.lang.reflect.Method.invokeNative(Native Method)
10-18 14:26:13.053: E/AndroidRuntime(278):  at java.lang.reflect.Method.invoke(Method.java:521)
10-18 14:26:13.053: E/AndroidRuntime(278):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-18 14:26:13.053: E/AndroidRuntime(278):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-18 14:26:13.053: E/AndroidRuntime(278):  at dalvik.system.NativeStart.main(Native Method)
10-18 14:26:13.053: E/AndroidRuntime(278): Caused by: java.lang.NullPointerException
10-18 14:26:13.053: E/AndroidRuntime(278):  at com.example.shareslab.MessageList.onCreate(MessageList.java:107)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-18 14:26:13.053: E/AndroidRuntime(278):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
我的活动在这里

package com.example.shareslab;


import java.util.ArrayList;
import java.util.Arrays;


import com.example.shareslab.R;

import android.app.Dialog;
import android.app.ListActivity;
import android.app.LocalActivityManager;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;

import android.os.Bundle;
import android.preference.PreferenceManager;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TabHost;

import android.widget.TabHost.TabSpec;
import android.widget.TextView;


public class MessageList extends ListActivity {
    LocalActivityManager mLocalActivityManager;



    public static String singleDescription;
    public static String title,URLToPost,imageURL;
    public static ArrayList<String> galleryImages;
    private static class EfficientAdapter extends BaseAdapter 
    {    
        private LayoutInflater mInflater;
        public EfficientAdapter(Context context)
        {
            mInflater = LayoutInflater.from(context);
        }
        @Override
        public int getCount() {
            System.out.println("description COUNT : "+SplashActivity.description.size());
            return SplashActivity.description.size();
        }
        @Override
        public Object getItem(int position) {
            return position;
        }
        @Override
        public long getItemId(int position) {
            return position;
        }
        @Override
        public View getView(final int position, View convertView, ViewGroup parent) 
        {

            ViewHolder holder;
            if (convertView == null)
            {
                convertView = mInflater.inflate(R.layout.inflate_list_item, null);
                holder = new ViewHolder();              
                holder.title = (TextView) convertView.findViewById(R.id.inflate_title);
                holder.des = (TextView) convertView.findViewById(R.id.inflate_description);
                holder.im=    (ImageView) convertView.findViewById(R.id.inflate_image);
                convertView.setTag(holder);           
            }
            else 
            {
                holder = (ViewHolder) convertView.getTag();

            }   

            UrlImageViewHelper.setUrlDrawable(holder.im, SplashActivity.imageURLAmit.get(position),null);
            holder.title.setText(SplashActivity.titles.get(position));
            holder.des.setText(SplashActivity.description.get(position));

            return convertView;
        }   

        public static class ViewHolder {
            TextView title,des;
            ImageView im;
        }

    } // close class Efficent adapter


    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.main);




        ListView listView = getListView();
        listView.setTextFilterEnabled(true);
        this.setListAdapter(new EfficientAdapter(this));
        listView.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                // When clicked, show a toast with the TextView text
                galleryImages=new ArrayList<String>();
                singleDescription=SplashActivity.description.get(position);
                title=SplashActivity.titles.get(position);
                URLToPost=SplashActivity.link.get(position);
                imageURL=SplashActivity.imageURLAmit.get(position);
                System.out.println("ON CLICK URL: "+URLToPost);
                galleryImages.addAll(Arrays.asList(SplashActivity.arrays[position]));               
                startActivity(new Intent(MessageList.this,MessageListDetail.class));
            }
        });

        TabHost tabHost = (TabHost)findViewById(android.R.id.tabhost);
        mLocalActivityManager = new LocalActivityManager(this, false);
        tabHost.setup(mLocalActivityManager);
        mLocalActivityManager.dispatchCreate(icicle); //after the tab's setup is called, you have to call this or it wont work

        TabHost.TabSpec spec;
        Intent intent;

        tabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);


        intent = new Intent().setClass(this, Home.class);
        spec = tabHost.newTabSpec("tagname1").setIndicator("HOME").setContent(intent);
        tabHost.addTab(spec);

        intent = new Intent().setClass(this, SocialMedia.class);
        spec = tabHost.newTabSpec("tagname2").setIndicator("SOCIAL MEDIA").setContent(intent);
        tabHost.addTab(spec);

        intent = new Intent().setClass(this, Tech.class);
        spec = tabHost.newTabSpec("tagname3").setIndicator("TECH").setContent(intent);
        tabHost.addTab(spec);

        intent = new Intent().setClass(this, USWorld.class);
        spec = tabHost.newTabSpec("tagname4").setIndicator("US & WORLD").setContent(intent);
        tabHost.addTab(spec);
        intent = new Intent().setClass(this, Business.class);
        spec = tabHost.newTabSpec("tagname5").setIndicator("BUSINESS").setContent(intent);
        tabHost.addTab(spec);

        intent = new Intent().setClass(this, Fashion.class);
        spec = tabHost.newTabSpec("tagname6").setIndicator("FASHION").setContent(intent);
        tabHost.addTab(spec);
        intent = new Intent().setClass(this, People.class);
        spec = tabHost.newTabSpec("tagname7").setIndicator("PEOPLE").setContent(intent);
        tabHost.addTab(spec);

        intent = new Intent().setClass(this, Political.class);
        spec = tabHost.newTabSpec("tagname8").setIndicator("POLITICAL").setContent(intent);
        tabHost.addTab(spec);
}

@Override
protected void onPause() {
        super.onPause();
        mLocalActivityManager.dispatchPause(isFinishing()); //you have to manually dispatch the pause msg
}

@Override
protected void onResume() {
        super.onResume();
        mLocalActivityManager.dispatchResume(); //you have to manually dispatch the resume msg
}







    private static View createTabView(final Context context, final String text) {
        View view = LayoutInflater.from(context).inflate(R.layout.tabs_bg, null);
        TextView tv = (TextView) view.findViewById(R.id.tabsText);
        tv.setText(text);
        return view;
    }

    }
package com.example.shareslab;
导入java.util.ArrayList;
导入java.util.array;
导入com.example.shareslab.R;
导入android.app.Dialog;
导入android.app.ListActivity;
导入android.app.LocalActivityManager;
导入android.content.Context;
导入android.content.Intent;
导入android.content.SharedReferences;
导入android.os.Bundle;
导入android.preference.PreferenceManager;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.AdapterView;
导入android.widget.AdapterView.OnItemClickListener;
导入android.widget.BaseAdapter;
导入android.widget.ImageView;
导入android.widget.ListView;
导入android.widget.TabHost;
导入android.widget.TabHost.TabSpec;
导入android.widget.TextView;
公共类MessageList扩展了ListActivity{
本地活动管理器多本地活动管理器;
公共静态字符串描述;
公共静态字符串标题、URLToPost、imageURL;
公共静态ArrayList GalleryImage;
私有静态类EfficientAdapter扩展BaseAdapter
{    
私人停车场;
公共效率适配器(上下文)
{
mInflater=LayoutInflater.from(上下文);
}
@凌驾
public int getCount(){
System.out.println(“描述计数:+SplashActivity.description.size());
返回SplashActivity.description.size();
}
@凌驾
公共对象getItem(int位置){
返回位置;
}
@凌驾
公共长getItemId(int位置){
返回位置;
}
@凌驾
公共视图getView(最终整数位置、视图转换视图、视图组父视图)
{
视窗座;
if(convertView==null)
{
convertView=mInflater.充气(R.layout.充气列表项,空);
holder=新的ViewHolder();
holder.title=(TextView)convertView.findViewById(R.id.inflate_title);
holder.des=(TextView)convertView.findViewById(R.id.inflate_说明);
holder.im=(ImageView)convertView.findViewById(R.id.inflate_image);
convertView.setTag(支架);
}
其他的
{
holder=(ViewHolder)convertView.getTag();
}   
UrlImageViewHelper.setUrlDrawable(holder.im,SplashActivity.imageURLAmit.get(position),null);
holder.title.setText(SplashActivity.titles.get(position));
holder.des.setText(SplashActivity.description.get(position));
返回视图;
}   
公共静态类视图持有者{
文本视图标题;
ImageView im;
}
}//关闭类有效适配器
@凌驾
创建公共空间(捆绑冰柱){
超级冰柱;
setContentView(R.layout.main);
ListView ListView=getListView();
setTextFilterEnabled(true);
this.setListAdapter(新的EfficientAdapter(this));
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
galleryImages=新的ArrayList();
singleDescription=SplashActivity.description.get(位置);
title=SplashActivity.titles.get(位置);
URLToPost=SplashActivity.link.get(位置);
imageURL=SplashActivity.imageURLAmit.get(位置);
System.out.println(“单击URL:+URLToPost”);
gallerymages.addAll(Arrays.asList(SplashActivity.Arrays[position]);
startActivity(新的意图(MessageList.this,MessageListDetail.class));
}
});
TabHost TabHost=(TabHost)findviewbyd(android.R.id.TabHost);
mLocalActivityManager=新的LocalActivityManager(此项为false);
tabHost.setup(mLocalActivityManager);
mLocalActivityManager.dispatchCreate(icicle);//调用选项卡的设置后,必须调用它,否则它将无法工作
TabHost.TabSpec;
意图;
tabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);
intent=newintent().setClass(这个,Home.class);
spec=tabHost.newTabSpec(“tagname1”).setIndicator(“HOME”).setContent(intent);
tabHost.addTab(spec);
intent=new intent().setClass(这是SocialMedia.class);
spec=tabHost.newTabSpec(“tagname2”).setIndicator(“社交媒体”).setContent(intent);
tabHost.addTab(spec);
intent=新intent().setClass(这个,Tech.class);
spec=tabHost.newTabSpec(“tagname3”).setIndicator(“TECH”).setContent(intent);
tabHost.addTab(spec);
intent=new intent().setClass(这是USWorld.class);
spec=tabHost.newTabSpec(“tagname4”).setIndicator(“美国和世界”).setContent(intent);
tabHost.addTab(spec);
intent=new intent().setClass(这是Business.class);
spec=tabHost.newTabSpec(“标记名5”).setIndicator(“业务”).setContent(意图);
tabHost.addTab(spec);
intent=newintent().setClass(this,Fashion.class);
spec=tabHost.newTabSpec(“tagname6”).setIndicator(“FASHION”).setContent(intent);
tabHost.addTab(spec);
intent=newintent().setClass(这是People.class);
spec=tabHost.newTabSpec(“tagname7”).setIndicator(“PEOPLE”).setContent(intent);
tabHost.addTab(spec);