2017-02-07 10 views
0

アクティビティAに2つのアクティビティAとB.IコールAPIがあり、JsonArrayでレスポンスを取得します。今、アクティビティAからアクティビティBでWhole JsonArrayを取得する必要があります。これを行うことはできますか?アクティビティーAからアクティビティーBにjsonarrayを渡しますか?

+0

、これを試してみてください? –

+0

私は、列と行のない列と行のない列と行の私は、私はアクティビティBで横と垂直に表示ボタンを持っている列と行を取得します。@ GaneshPatil – mohsinmemon

+0

アクティビティAからBへのインテントを通してJsonArrayを渡す – Gautam

答えて

0

最初から2番目のアクティビティを開始しない場合は、 Jsonをpublic staticとして宣言してください。 それ以外の場合は、バンドルとしてインテントに渡してください。

+0

アクティビティAからBへの任意のメソッド、putExtra、getExtra()ではなく、Whole Array? – mohsinmemon

+0

それから、toString()を使うだけで、それはあなたを追加として渡すことができる文字列に変換し、新しいJsonArray( "ここに文字列")を使用する必要があります。 – nullvoid

1

@mohsinmemon [文字列にJsonArrayを変換する意図に添付ANSに送信します。 ActivityBで

JSONObject jObject = new JSONObject("Json Response"); 
Intent obj_intent = new Intent(ActivityA.this, ActivityB.class); 
Bundle b = new Bundle();     
b.putString("Array",jObject.toString()); 
obj_intent.putExtras(b); 

まずあなたは以下のような活動AにArrayListのようにデータを変換する必要があり
Bundle b = getIntent().getExtras(); 
String Array=b.getString("Array"); 
0

:あなたのようなあなたの意図でこのArrayListのを置くことができ、このステップの後

ArrayList<YourCustomDataModel> dataArrayList= null; 
    String jsonInternets = //"Your Json Response" 

    if (jsonInternets != null && !jsonInternets.isEmpty()) { 
     Gson gson = new Gson(); 
     YourCustomDataModel[] dataModels= gson.fromJson(jsonInternets, 
       YourCustomDataModel[].class); 

     dataArrayList= new ArrayList<YourCustomDataModel>(Arrays.asList(dataModels)); 
    } 

以下:

​​

は現在、アクティビティBでこの手順の後に、あなたは以下のようにArrayListのようにデータを取得することができます。

if (getIntent().getExtras()!=null&&getIntent().getExtras().getSerializable("data")!=null) 
    { 
     ArrayList<YourCustomDataModel> dataArrayList=getIntent().getExtras().getSerializable("data"); 
    } 
1

は、あなたがこれまで試したどの

In Activity A: 

    Intent intent = new Intent(ActivityA.this, ActivityB.class); 
    intent.putExtra("jsonArray", jsonArray.toString()); 
    startActivity(intent); 

    In Activity B: 

    Intent intent = getIntent(); 
    String jsonArray = intent.getStringExtra("jsonArray"); 

    try { 
     JSONArray array = new JSONArray(jsonArray); 

    } catch (JSONException e) { 
     e.printStackTrace(); 
    } 
関連する問題