Advertisement
Guest User

Untitled

a guest
Jul 28th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.38 KB | None | 0 0
  1. package com.app.expostore.Fragment;
  2.  
  3. import android.content.Context;
  4. import android.graphics.Color;
  5. import android.os.Bundle;
  6. import android.support.annotation.Nullable;
  7. import android.support.design.widget.Snackbar;
  8. import android.support.v4.app.Fragment;
  9. import android.support.v4.widget.Space;
  10. import android.util.Log;
  11. import android.view.Gravity;
  12. import android.view.LayoutInflater;
  13. import android.view.View;
  14. import android.view.ViewGroup;
  15. import android.widget.AdapterView;
  16. import android.widget.ArrayAdapter;
  17. import android.widget.BaseAdapter;
  18. import android.widget.Spinner;
  19. import android.widget.SpinnerAdapter;
  20. import android.widget.TextView;
  21. import android.widget.Toast;
  22.  
  23. import com.app.expostore.R;
  24. import com.app.expostore.Utils.CallAddr;
  25. import com.app.expostore.Utils.ConstantData;
  26. import com.app.expostore.Utils.OnWebServiceResult;
  27. import com.app.expostore.Utils.Util;
  28.  
  29. import org.json.JSONArray;
  30. import org.json.JSONException;
  31. import org.json.JSONObject;
  32.  
  33. import java.util.ArrayList;
  34.  
  35.  
  36. /**
  37. * Created by iStorry on 7/26/16.
  38. */
  39. public class Fav extends Fragment implements OnWebServiceResult {
  40.  
  41. CallAddr service;
  42.  
  43. ArrayList<ArrayList<String>> myarrays;
  44.  
  45. ArrayList<ArrayList<String>> arrays;
  46.  
  47. ArrayList<String> sub2Array;
  48. ArrayList<String> dropDown2Array;
  49.  
  50.  
  51. ArrayList<String> subArray;
  52. ArrayList<String> dropDownArray;
  53. String name;
  54.  
  55. Spinner spinner;
  56.  
  57. Spinner subSpinner;
  58.  
  59. Spinner sub2Spinner;
  60.  
  61. JSONObject c;
  62. JSONObject e;
  63.  
  64. @Nullable
  65. @Override
  66. public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  67.  
  68. View v;
  69. v = inflater.inflate(R.layout.fragment_fav, container, false);
  70. spinner = (Spinner) v.findViewById(R.id.spinner);
  71. subSpinner = (Spinner) v.findViewById(R.id.subSpinner);
  72. sub2Spinner = (Spinner) v.findViewById(R.id.sub2Spinner);
  73.  
  74. service = new CallAddr(getActivity(), ConstantData.get_products, null, Util.SERVICE_TYPE.LOGIN, this);
  75. Util.showLoading(getActivity(), "Getting Products...", true);
  76. service.execute();
  77.  
  78. return v;
  79. }
  80.  
  81. @Override
  82. public void getWebResponse(String result, Util.SERVICE_TYPE type) {
  83. Util.hideLoading();
  84. try {
  85. JSONObject json = new JSONObject(result);
  86. final JSONArray leaders = json.getJSONArray("data");
  87. int size = leaders.length();
  88.  
  89. arrays = new ArrayList<>();
  90. myarrays = new ArrayList<>();
  91. dropDownArray = new ArrayList<>();
  92. for (int i = 0; i < size; i++) {
  93. c = leaders.getJSONObject(i);
  94. subArray = new ArrayList<>();
  95. String id = c.getString("category");
  96. dropDownArray.add(id);
  97. JSONArray subs = c.getJSONArray("result");
  98. int subsize = subs.length();
  99. for (int j = 0; j < subsize; j++) {
  100. subArray.add(subs.getJSONObject(j).getString("sub"));
  101. e = subs.getJSONObject(j);
  102. sub2Array = new ArrayList<>();
  103. JSONArray subs2 = e.getJSONArray("min");
  104. int sub2size = subs2.length();
  105. for (int p = 0; p < sub2size; p++) {
  106. //System.out.println(subs2.getJSONObject(p).getString("mini"));
  107. sub2Array.add(subs2.getJSONObject(p).getString("mini"));
  108. }
  109. myarrays.add(sub2Array);
  110. }
  111. myarrays.add(subArray);
  112. }
  113.  
  114. MySpinner myspinner = new MySpinner(getActivity(), dropDownArray);
  115. spinner.setAdapter(myspinner);
  116.  
  117. spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
  118. @Override
  119. public void onItemSelected(AdapterView<?> parent, View view, final int position, long id) {
  120. ArrayList<String> subsarraylist = myarrays.get(position);
  121. MySpinner myspinner = new MySpinner(getActivity(), subsarraylist);
  122. subSpinner.setAdapter(myspinner);
  123.  
  124. subSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){
  125.  
  126. @Override
  127. public void onItemSelected(AdapterView<?> parent, View view, int positions, long id) {
  128. ArrayList<String> subs2array = myarrays.get(positions);
  129. MySpinner myspinner = new MySpinner(getActivity(), subs2array);
  130. System.out.println(positions);
  131. }
  132.  
  133. @Override
  134. public void onNothingSelected(AdapterView<?> parent) {
  135.  
  136. }
  137.  
  138. });
  139. }
  140.  
  141. @Override
  142. public void onNothingSelected(AdapterView<?> parent) {
  143.  
  144. }
  145. });
  146.  
  147. } catch (JSONException e1) {
  148. e1.printStackTrace();
  149. }
  150. }
  151.  
  152. public class MySpinner extends BaseAdapter implements SpinnerAdapter {
  153.  
  154. private final Context activity;
  155. private ArrayList<String> asr;
  156.  
  157. public MySpinner(Context context, ArrayList<String> asr) {
  158. this.asr = asr;
  159. activity = context;
  160. }
  161.  
  162.  
  163. public int getCount() {
  164. return asr.size();
  165. }
  166.  
  167. public Object getItem(int i) {
  168. return asr.get(i);
  169. }
  170.  
  171. public long getItemId(int i) {
  172. return (long) i;
  173. }
  174.  
  175.  
  176. @Override
  177. public View getDropDownView(int position, View convertView, ViewGroup parent) {
  178. TextView txt = new TextView(activity);
  179. txt.setPadding(20, 20, 20, 20);
  180. txt.setTextSize(16);
  181. txt.setGravity(Gravity.CENTER_VERTICAL);
  182. txt.setText(asr.get(position));
  183. txt.setTextColor(Color.parseColor("#000000"));
  184. return txt;
  185. }
  186.  
  187. public View getView(int i, View view, ViewGroup viewgroup) {
  188. TextView txt = new TextView(activity);
  189. txt.setGravity(Gravity.CENTER);
  190. txt.setPadding(20, 20, 20, 20);
  191. txt.setTextSize(16);
  192. txt.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_expand_more_black_24dp, 0);
  193. txt.setText(asr.get(i));
  194. txt.setTextColor(Color.parseColor("#000000"));
  195. return txt;
  196. }
  197.  
  198. }
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement