-2

みんな私のアプリケーションより1つのアクティビティで2つのハッシュマップarraylistを使用するとアンドロイドプロジェクトに取り組んでいます。最後の2日間で作業していますが、まだ問題が残っています。私はすべてのソリューションとデバッグプログラムを試し、すべてのステップを非常に深く勉強しました。1つのアクティビティで2つのハッシュマップアーリーリストを使用する方法は?

public static ArrayList<HashMap<String, String>> arrayList; 
public static ArrayList<HashMap<String, String>> arrayList1; 

arraylist1は私がarraylistにコメントするまで動作していません。私は問題を理解することはできませんどのような解決策をお勧めします。

public class Dashboard extends Activity { 
    public static Dashboard_Adapter adapter; 
    public static list_adapter list_adapter; 
    ListView listview; 
    ListView Listnewpost; 
    JSONObject jsonObject; 
public static final String like_count = "like_count"; 
public static final String name1 = "name"; 
String like; 
public static String name11; 
public static ArrayList<HashMap<String, String>> arrayList; 
    public static ArrayList<HashMap<String, String>> arrayList1; 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.dashborad); 
    listview = (ListView) findViewById(R.id.lvcomment); 
    Listnewpost= (ListView) findViewById(R.id.lvShowPost); 
    arrayList = new ArrayList<>(); 
    arrayList1= new ArrayList<>(); 
    new dash_board().execute(); 

} 


private class dash_board extends AsyncTask<String, String, String> { 
     @Override 
     protected void onPreExecute() { 
      super.onPreExecute(); 
      progressDialog = new ProgressDialog(Dashboard.this); 
      progressDialog.setMessage("Please wait while your request is in progress....."); 
      progressDialog.setIndeterminate(false); 
      progressDialog.setCancelable(true); 
      progressDialog.show(); 
     } 



@Override 
    protected String doInBackground(String... params) { 
     int success; 
     JSONObject response; 
     int returnCode; 
     //String result = "{\"Response\":{\"ReturnCode\":200,\"ReturnMessage\":\"Information Successfully Retrieved\",\"ReturnData\":null,\"ReturnClass\":{\"PRO_ID\":\"11111111-1111-1111-1111-111111111111\",\"PRO_FirstName\":\"SILVER\",\"PRO_LastName\":\"HIYO\"},\"FriendlyErrorMessage\":null}}"; 
     String data1 = "[{this is a flat json}]; 



     try { 
      Log.d("hy one ","two"); 

      JSONArray jr=new JSONArray(data); 

      HashMap<String, String> arre; 
      for (int i=0;i<jr.length();i++) { 
       jsonObject = jr.getJSONObject(i); 
       like = jsonObject.getString(like_count); 

       arre = new HashMap<>(); 
       arre.put("like_count", like); 
       arrayList1.add(arre); 
      } 

       JSONArray jsonArray3=jsonObject.getJSONArray("comments"); 
       HashMap<String, String> arr; 
       for(int j=0;j<jsonArray3.length();j++){ 
        arr = new HashMap<>(); 
        JSONObject jsonObject3 = jsonArray3.getJSONObject(j); 
        name11=jsonObject3.getString(name1); 
        Log.d("name value",name11); 

        arr.put("name",name11); 
        arrayList.add(arr); 
       } 

      Log.d("arraylist", String.valueOf(arrayList1.get(0))); 


     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 
     return null; 
    } 
    @Override 
    protected void onPostExecute(String s) { 
     super.onPostExecute(s); 
     progressDialog.dismiss(); 

     list_adapter= new list_adapter(Dashboard.this,arrayList1);   
     adapter=new Dashboard_Adapter(Dashboard.this,arrayList); 


     listview.setAdapter(adapter); 


     Listnewpost.setAdapter(list_adapter); 



    } 
} 
+0

は 'arrayList'と' arrayList1'ください –

+1

詳細コードを表示する際にアプリがクラッシュしますが、スタックトレースを表示することができれば、それはあまりにもいいだろう、また、あなたのJavaコード –

+1

を投稿してください。 – Patrick

答えて

0

この

ArrayList<HashMap<String, String>> arrayList = new ArrayList<>(); 
    HashMap<String, String> stringStringHashMap = new HashMap<>(); 
    stringStringHashMap.put("key1","Hello 1"); 
    stringStringHashMap.put("key2","Hello 2"); 
    stringStringHashMap.put("key3","Hello 3"); 
    arrayList.add(stringStringHashMap); 

    ArrayList<HashMap<String, String>> arrayList1 = new ArrayList<>(); 
    HashMap<String, String> stringStringHashMap1 = new HashMap<>(); 
    stringStringHashMap1.put("key1","Hello 1"); 
    stringStringHashMap1.put("key2","Hello 2"); 
    stringStringHashMap1.put("key3","Hello 3"); 
    arrayList1.add(stringStringHashMap1); 
0

メイク、ハッシュマップの上記のonCreate()メソッドの代わりに、すなわちのonCreate()メソッド(内部で作成するのを作成してハッシュマップのような何かを

Javaコード....グローバル)。

private ArrayList<HashMap<String, String>> arrayList = new ArrayList<HashMap<String, String>>(); 
private ArrayList<HashMap<String, String>> arrayList1 new ArrayList<HashMap<String, String>>(); 
関連する問題