当前位置: 代码迷 >> Android >> 大家来看看,为什么会手机显示进程无法响应意外终止,百思不得其解,附详细注释解决方案
  详细解决方案

大家来看看,为什么会手机显示进程无法响应意外终止,百思不得其解,附详细注释解决方案

热度:77   发布时间:2016-05-01 21:14:42.0
大家来看看,为什么会手机显示进程无法响应意外终止,,百思不得其解,,附详细注释
Java code
package org.stu80;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import android.widget.AdapterView;import android.widget.AdapterView.OnItemSelectedListener;import android.widget.ArrayAdapter;import android.widget.EditText;import android.widget.LinearLayout;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.Spinner;import android.widget.TextView;import android.widget.Toast;import android.view.View; import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.ksoap2.SoapEnvelope;import org.ksoap2.serialization.SoapObject;import org.ksoap2.serialization.SoapSerializationEnvelope;import org.ksoap2.transport.AndroidHttpTransport;//以上import  忽略,,无视public class Stu80Activity extends Activity {    /** Called when the activity is first created. */    public static SoapObject soapObject ;         private static final String NAMESPACE = "http://tempuri.org/";    private static String URL = "http://www.stu80.com/android/list.asmx";     private static final String METHOD_NAME = "ListInfo";    private static String SOAP_ACTION = "http://tempuri.org/ListInfo";    private ListView ls;    @Override            public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        //加载mainxml布局文件,没有问题        setContentView(R.layout.main);                          //获取适配器内容,,默认取参数为1的数据。        ArrayList items = getItems(1);        //显示函数,将适配器内容显示到ListView        display(items);    }    public void display(ArrayList items)        {        ls=(ListView) findViewById(R.id.ls);        SimpleAdapter adapter = new SimpleAdapter(this, items, R.layout.simple_expandable_list_item_1,                 new String[] {"ls_title","ls_name","ls_time","ls_num"},                 new int[] {R.id.ls_title,R.id.ls_name, R.id.ls_time,R.id.ls_num});        //位ListView设置Adapter        ls.setAdapter(adapter);  // ------以上是ListView显示内容。。。。。               // ----以下是增加Spinner,并监听             //添加Spinner事件监听         Spinner sp=(Spinner) findViewById(R.id.sp);        ArrayAdapter ada = ArrayAdapter.createFromResource(this, R.array.list, android.R.layout.simple_spinner_item);         ada.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);         sp.setAdapter(ada);       //定义子元素选择监听器          sp.setSelection(0, false);        sp.setOnItemSelectedListener(new OnItemSelectedListener() {             @Override            public void onItemSelected(AdapterView<?> parent, View view,                     int position, long id) {                  //  Toast.makeText(Stu80Activity.this,"选择的色彩: " +                  //  parent.getItemAtPosition(position).toString(), Toast.LENGTH_LONG).show();                 String pos=parent.getItemAtPosition(position).toString();                  TextView tv=(TextView) findViewById(R.id.logotitle);                tv.setText(pos);         //------------问题就在这里,选中事件触发,到jump函数                jump(2);            }             @Override             public void onNothingSelected(AdapterView<?> parent) {              }        });      }             public void jump(int pos)    {                if(pos==2)        {            //为了用于测试              Toast.makeText(Stu80Activity.this,"选择的pos: " +                       pos, Toast.LENGTH_LONG).show();             //---为了用于测试               //问题就在这里,,上面的语句可以显示,且是正确的。。。。但是下面怎么会无法显示呢 ,出现标题所示的错误                          ArrayList items=getItems(pos);            display(items);        }            }     public ArrayList getItems(int pos) {                 ArrayList items = new ArrayList();        try {                 soapObject = new SoapObject(NAMESPACE, METHOD_NAME);                 if(pos==1)                 {                          soapObject.addProperty("param", "1");                 }               if(pos==2)                 {                          soapObject.addProperty("param", "2");                 }                          AndroidHttpTransport ht = new AndroidHttpTransport(URL);                          SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);                                                   envelope.bodyOut = soapObject;                          envelope.dotNet = true;                          envelope.setOutputSoapObject(soapObject);                          ht.call(SOAP_ACTION, envelope);                                         soapObject = (SoapObject) envelope.bodyIn;                      //  soapObject = (SoapObject) envelope.getResponse();                       Object result= (Object) soapObject.getProperty(METHOD_NAME+"Result");                     Document document = DocumentHelper.parseText(result.toString());                     Element root=document.getRootElement();                    Iterator iterator=root.elementIterator();                    while(iterator.hasNext())                    {                      HashMap map = new HashMap();                        Element element=(Element)iterator.next();                        if(element.getName().equals("list"))                        {                          map.put("ls_title",element.element("title").getText());                          map.put("ls_name","by: "+element.element("name").getText());                          map.put("ls_time",element.element("time").getText());                          if(element.element("num").getText()==""||element.element("num").getText()==null)                          {                              map.put("ls_num","[0]");                          }else{                          map.put("ls_num","["+element.element("num").getText()+"]");                          }                           items.add(map);                        }                    }                                   //        tx.setText(s);                                    } catch (Exception e) {                 e.printStackTrace();          //     tx.setText(""+e+"");                }        return items;    }    }}
  相关解决方案