【问题标题】:how to send recived data in string to oncreate method is android?如何将字符串中的接收数据发送到oncreate方法是android?
【发布时间】:2014-05-03 10:15:20
【问题描述】:

我使用 aysctask 从 Web 服务获取数据。我想要从字符串中获得的任何数据,这些数据添加到 ArrayList markerPoints 数组列表中。这是在 oncreate 中声明的,所以我如何将数据添加到 arraylist.pls 帮助我,我是 android 的新手。提前致谢。

           protected void onPostExecute(String response) {


      super.onPostExecute(response);     

          try {

            JSONObject jsonResponse = new JSONObject(response);

            JSONObject jArray = jsonResponse.getJSONObject("data");

            JSONObject jstart = jArray.getJSONObject("start");

            JSONObject jend = jArray.getJSONObject("end");

            JSONObject jcureent = jArray.getJSONObject("current");                  

            for (int i = 0; i < jArray.length(); i++) {

                startlat=jstart.getString("lat");

                startlong=jstart.getString("long");

                endtlat=jend.getString("lat");

                endlong=jend.getString("long");

                currentlat=jcureent.getString("lat");

                currentlong=jcureent.getString("long");

        } 

在 oncreate 中我声明了 , markerPoints = new ArrayList();我创建了一个数组列表,我希望从它存储到该数组中的 json 中获取任何数据。谢谢

【问题讨论】:

  • 它是什么类型的arraylist??
  • ArrayList markerPoints = new ArrayList(); thsi 是 latlng 类型的数组列表。我将其声明为全局变量。

标签: android arraylist


【解决方案1】:

ArrayList 声明为全局变量:


    public class MainActivity extends Activity {

        private ArrayList myArrayList;

        protected void onCreate(Bundle bundle) {
            ...
            myArrayList = new ArrayList();

            ...
        }
        private final class MyAsyncTask extends AsyncTask {
             ...

             protected void onPostExecute(String response) {
                super.onPostExecute(response);     

                try {

                 JSONObject jsonResponse = new JSONObject(response);
                 JSONObject jArray = jsonResponse.getJSONObject("data");
                 JSONObject jstart = jArray.getJSONObject("start");
                 JSONObject jend = jArray.getJSONObject("end");
                 JSONObject jcureent = jArray.getJSONObject("current"); 

                 for (...  ) {
                    myArrayList.add(jstart.getString("lat"));
                     myArrayList.add(jstart.getString("long"));
                     myArrayList.add(jend.getString("lat"));
                     myArrayList.add(jend.getString("long"));
                     myArrayList.add(jcureent.getString("lat"));
                     myArrayList.add(jcureent.getString("long"));

                  } 
                } catch(...) { }

     }

【讨论】:

  • 1.我将数组列表创建为全局变量。数组列表是 latlng 类型,即 ArrayList markerPoints = new ArrayList(); 2. 实际上我想要从 json 获得的任何信息,即 lat 和 lng 被添加到这个 arrylist 中。数组列表是 latlng type.how?谢谢。
猜你喜欢
  • 2012-03-29
  • 2017-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多