从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
}