将JSONObject的值传递给getItem的情况

时间:2015-06-17 11:33:00

标签: java android

我再次谈论汽车故事。在汽车适配器我想通过所有的价值,就像我现在做的那样。从每个领域我想取价值。

在getItem函数中,我将向case 0传递car对象的索引0的字段/值(名称和描述)。对于案例1,我想传递索引为1的字段/值。

CarAdapter.java

public void onEvent(CarResponse reponse) throws JSONException {
data = reponse.getData();
car = data.getJSONArray("carList");

 for(int i = 0 ; i < car.length() ; i++){
     JSONObject firstCar =  car.getJSONObject(i);
     CAR_NAAM = firstCar.getString("name");
     CAR_DESCRIPTION = firstCar.getString("description");
    }
}


@Override
public Fragment getItem(int position) {

switch (position){
    case 0:
        coffeeName = CAR_NAAM;
        description = CAR_DESCRIPTION;


    case 1:
        carName = CAR_NAAM;
        description = CAR_DESCRIPTION;

}
return CarFragment.newInstance(carName, description);
}

你们中的任何人都能帮助我走正确的道路吗?如果问题不明确,我可以详细说明。

P.S:我知道你可以通过加载变量并手动逐个获取值来实现这一点。因此,我的计划会变得沉重。这是我认为最糟糕的解决方案。

1 个答案:

答案 0 :(得分:0)

使用JSONObjectJSONArray获取position。您可以使用以下代码。

@Override
public Fragment getItem(int position) {

    JSONObject objCar = car.get(position);
    String carName = objCar.getString("name");
    String description = objCar.getString("description");
    return CarFragment.newInstance(carName, description);
}