从android微调器中选择实体的价格

从android微调器中选择实体的价格,android,json,android-spinner,Android,Json,Android Spinner,我正在从responseJson获取数据,以加载我在应用程序中使用的微调器。我已使用以下代码成功地将数据加载到微调器。我的问题是微调器中的每个项目都有不同的值,我想使用这些值来计算项目的总值 我有一个文本视图,如下所示 itemvalueTV = (TextView) findViewById(R.id.itemvalue); 我正在尝试将所选项目的价格值分配给此textview 用于将数据加载到微调器的代码 @Override public void onTaskCompleted(

我正在从
responseJson
获取数据,以加载我在应用程序中使用的微调器。我已使用以下代码成功地将数据加载到微调器。我的问题是微调器中的每个项目都有不同的值,我想使用这些值来计算项目的总值

我有一个
文本视图
,如下所示

itemvalueTV = (TextView) findViewById(R.id.itemvalue);
我正在尝试将所选项目的价格值分配给此textview

用于将数据加载到微调器的代码

@Override
    public void onTaskCompleted(JSONArray responseJson) {

        try {

            List<String> extraDescription = new ArrayList<String>();
            List<String> extraPrice = new ArrayList<String>();


            for (int i = 0; i < responseJson.length(); ++i) {
                JSONObject object = responseJson.getJSONObject(i);

                if ((object.getString("MainCategoryID")).equals("1")) {

                    JSONArray subMenuArray = object
                            .getJSONArray("SubMenuEntity");

                    for (int j = 0; j < subMenuArray.length(); ++j) {
                        JSONObject subMenuObject = subMenuArray
                                .getJSONObject(j);

                        JSONArray extraItemEntityArray = subMenuObject
                                .getJSONArray("ExtraItemEntity");

                        for (int k = 0; k < extraItemEntityArray.length(); k++) {
                            JSONObject objectE = extraItemEntityArray
                                    .getJSONObject(k);

                            if ((objectE.getString("Description")) != null
                                    && (objectE.getString("Type")).equals("E")) {

                                extraDescription.add(objectE
                                        .getString("Description"));
                                extraPrice.add(objectE
                                        .getString("Price"));
                                Log.i("ExtraDescriptionPrice", objectE.getString("Price"));
                            }
                        }

                    }

                }
extraDescriptionOneSP
                        .setOnItemSelectedListener(new MyOnItemSelectedListener());
                extraDescription = Utils
                        .removeDuplicatesFromList(extraDescription);
                ArrayAdapter<String> dataAdapterExtraDesOne = new ArrayAdapter<String>(
                        this, android.R.layout.simple_spinner_item,
                        extraDescription);
                dataAdapterExtraDesOne
                        .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                extraDescriptionOneSP.setAdapter(dataAdapterExtraDesOne);
                extraDescriptionOneSP
                        .setAdapter(new NothingSelectedSpinnerAdapter(
                                dataAdapterExtraDesOne,
                                R.layout.contact_spinner_row_nothing_selected,
                                this));

尝试使用GSON将json-to-java对象解析为arraylist。然后从那里建造旋转器

然后在微调器中选择一个项目。从arraylist中获取对象并计算价格。如果是“每项”,那么最好的方法是在对象内部创建一个计算价格的方法,以便在需要时调用它并将其设置为textview

可以使用创建用于解析的对象。然后创建为您执行计算的方法


如果您不想使用Gson,那么您可以使用上面提到的代码,创建自己的java类来设置数据并在其中包含计算方法。然后调用它并在文本视图中设置数据。

我是android新手,所以你的答案太重,我无法理解。但我会尽力做到这一点,也许可以看看解析。谷歌也会给你足够的结果。好的luckI如果我有任何问题,我会尽力回复你的,非常感谢。
{  
   "ExtraSubMenuCode":"L   ",
   "Description":"Add B",
   "ExtraItemID":19,
   "Type":"E",
   "ExtraMainMenuCode":"EBC ",
   "Price":30
}