diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java index 45f66f6..9da8fce 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java @@ -12,9 +12,12 @@ import android.widget.EditText; import android.widget.TextView; import com.hjx.personalcenter.R; +import com.hjx.personalcenter.customdialog.CitysListDialog; +import com.hjx.personalcenter.customdialog.CountryDialog; import com.hjx.personalcenter.customdialog.GradeListDialog; import com.hjx.personalcenter.customdialog.ProvinceListDialog; import com.hjx.personalcenter.customdialog.SchoolListDialog; +import com.hjx.personalcenter.db.SaveParam; import com.hjx.personalcenter.http.HttpManager; import com.hjx.personalcenter.interfaces.DialogCallBack; import com.hjx.personalcenter.util.AlertUtils; @@ -74,12 +77,12 @@ public class RegisterInfoActivity extends AppCompatActivity implements View.OnCl choisegrade(); break; case R.id.et_school: - if (TextUtils.isEmpty(register2) || TextUtils.isEmpty(register3)){ - AlertUtils.showToast(RegisterInfoActivity.this, "请选择年级和地址"); - return; - }else { +// if (TextUtils.isEmpty(register2) || TextUtils.isEmpty(register3)){ +// AlertUtils.showToast(RegisterInfoActivity.this, "请选择年级和地址"); +// return; + // }else { choiseschool(); - } + // } break; case R.id.btn_ok: @@ -101,10 +104,8 @@ public class RegisterInfoActivity extends AppCompatActivity implements View.OnCl //选择地区 private void choiseregion() { - HttpManager.getInstance().provices(RegisterInfoActivity.this); + ProvinceListDialog.getInstance(this).show(getSupportFragmentManager(), "ProvinceListDialog"); -// HttpManager.getInstance().cityinfo(RegisterInfoActivity.this,111); -// CitysListDialog.getInstance(this).show(getSupportFragmentManager(), "CitysListDialog"); } //选择年级 @@ -115,18 +116,36 @@ public class RegisterInfoActivity extends AppCompatActivity implements View.OnCl } //选择学校 private void choiseschool() { - HttpManager.getInstance().getschool(RegisterInfoActivity.this,130102,14); SchoolListDialog.getInstance().show(getSupportFragmentManager(), "SchoolListDialog"); } @Override - public void provinceOnItemClick(AdapterView parent, View view, int position, long id) { + public void provinceOnItemClick(AdapterView parent, View view, int position, long id,int type) { + + if (type==1){ + View gradeView = parent.getChildAt(position); + TextView gradeTv = (TextView)gradeView.findViewById(R.id.list_items); + SaveParam.getInstance().saveLoginParam(this,"sheng",gradeTv.getText().toString()); + CitysListDialog.getInstance(this).show(getSupportFragmentManager(), "CitysListDialog"); + } + + if (type==2){ + View gradeView = parent.getChildAt(position); + TextView gradeTv = (TextView)gradeView.findViewById(R.id.list_items); + SaveParam.getInstance().saveLoginParam(this,"shi",gradeTv.getText().toString()); + CountryDialog.getInstance(this).show(getSupportFragmentManager(), "CountryDialog"); + } + + if (type==3){ + View gradeView = parent.getChildAt(position); + TextView gradeTv = (TextView)gradeView.findViewById(R.id.list_items); + String provice = SaveParam.getInstance().getLoginParam(this,"sheng"); + String citys = SaveParam.getInstance().getLoginParam(this,"shi"); + et_region.setText(provice+citys+gradeTv.getText().toString()); + } - View gradeView = parent.getChildAt(position); - TextView gradeTv = (TextView)gradeView.findViewById(R.id.list_items); - et_region.setText(gradeTv.getText().toString()); } diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CitysAdapter.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CitysAdapter.java index 0e4a2de..dde0397 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CitysAdapter.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CitysAdapter.java @@ -53,7 +53,7 @@ public class CitysAdapter extends BaseAdapter { holder = (ProvincesAdapter.ViewHolder) convertView.getTag(); } - holder.nameText.setText(objects.get(position).getRegionName()); + holder.nameText.setText(objects.get(position).getRegionName()+"市"); return convertView; } diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CountryAdapter.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CountryAdapter.java new file mode 100644 index 0000000..918ba95 --- /dev/null +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/CountryAdapter.java @@ -0,0 +1,66 @@ +package com.hjx.personalcenter.adapter; + +import android.content.Context; +import android.view.View; +import android.view.ViewGroup; +import android.widget.BaseAdapter; +import android.widget.TextView; + +import com.hjx.personalcenter.R; +import com.hjx.personalcenter.model.CityInfo; +import com.hjx.personalcenter.model.CountyInfo; + +import java.util.ArrayList; + +/** + * Created by wei on 2017/8/21. + */ + +public class CountryAdapter extends BaseAdapter{ + ArrayList objects; + private Context context; + + public CountryAdapter(ArrayList objects, Context context) { + this.objects = objects; + this.context = context; + } + + @Override + public int getCount() { + return objects.size(); + } + + @Override + public Object getItem(int position) { + return position; + } + + @Override + public long getItemId(int position) { + return position; + } + + @Override + public View getView(final int position, View convertView, ViewGroup parent) { + + ProvincesAdapter.ViewHolder holder = null; + + if (convertView == null) { + convertView = View.inflate(context, R.layout.custom_adilog_list_item, null); + holder = new ProvincesAdapter.ViewHolder(); + holder.nameText = (TextView) convertView.findViewById(R.id.list_items); + convertView.setTag(holder); + } else { + holder = (ProvincesAdapter.ViewHolder) convertView.getTag(); + } + + holder.nameText.setText(objects.get(position).getRegionName()+"区"); + + return convertView; + } + + + static class ViewHolder { + TextView nameText; + } +} diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/ProvincesAdapter.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/ProvincesAdapter.java index e77a795..f3a07d2 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/ProvincesAdapter.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/ProvincesAdapter.java @@ -53,7 +53,7 @@ public class ProvincesAdapter extends BaseAdapter { holder = (ProvincesAdapter.ViewHolder) convertView.getTag(); } - holder.nameText.setText(objects.get(position).getRegionName()); + holder.nameText.setText(objects.get(position).getRegionName()+"省"); return convertView; } diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java index 3684772..b40759b 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java @@ -3,6 +3,8 @@ package com.hjx.personalcenter.customdialog; import android.content.Context; import android.graphics.Color; import android.os.Bundle; +import android.os.Handler; +import android.os.Message; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; @@ -13,12 +15,16 @@ import android.widget.ListView; import com.hjx.personalcenter.R; import com.hjx.personalcenter.adapter.CitysAdapter; import com.hjx.personalcenter.db.SaveParam; +import com.hjx.personalcenter.http.HttpCode; +import com.hjx.personalcenter.http.HttpManager; import com.hjx.personalcenter.interfaces.DialogCallBack; import com.hjx.personalcenter.model.CityInfo; +import com.hjx.personalcenter.model.ProvinceInfo; import com.mylhyl.circledialog.BaseCircleDialog; import com.mylhyl.circledialog.res.values.CircleDimen; import java.util.ArrayList; +import java.util.List; /** * 自定义市级列表对话框 @@ -43,6 +49,19 @@ public class CitysListDialog extends BaseCircleDialog implements AdapterView.OnI dialogFragment.setBackgroundColor(Color.WHITE); return dialogFragment; } + Handler handler = new Handler(){ + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what){ + case HttpCode.CITYS: + data.clear(); + data.addAll( (List)msg.obj); + listadapter.notifyDataSetChanged(); + break; + } + } + }; @Override public View createView(Context context, LayoutInflater inflater, ViewGroup container) { @@ -53,31 +72,24 @@ public class CitysListDialog extends BaseCircleDialog implements AdapterView.OnI public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); listView = (ListView) getView().findViewById(R.id.listadapter); - String provinces = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.CITYS); -// if (provinces != null) { -// -// for (int i = 0; i < provinces.split(",").length; i++) { -// String[] itmt = provinces.split(","); -// data.add(itmt[i] + "区"); -// //data.add(i,provinces.replaceAll(",","省")); -// -// } -// } else { -// HttpManager.getInstance().provices(getActivity()); -// } - + String citys = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.PROVINCES); listadapter = new CitysAdapter(data,getActivity()); listView.setAdapter(listadapter); listView.setOnItemClickListener(this); + try { + int a = Integer.parseInt(citys); + HttpManager.getInstance().cityinfo(getActivity(),a,handler); + } catch (NumberFormatException e) { + e.printStackTrace(); + } + } @Override public void onItemClick(AdapterView parent, View view, int position, long id) { - mCallBack.provinceOnItemClick(parent,view,position,id); - - - + SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.CITYS, ""+data.get(position).getRegionId()); + mCallBack.provinceOnItemClick(parent,view,position,id,2); dismiss(); } diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CountryDialog.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CountryDialog.java new file mode 100644 index 0000000..ce81c64 --- /dev/null +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/CountryDialog.java @@ -0,0 +1,96 @@ +package com.hjx.personalcenter.customdialog; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.Gravity; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.AdapterView; +import android.widget.ListView; + +import com.hjx.personalcenter.R; +import com.hjx.personalcenter.adapter.CitysAdapter; +import com.hjx.personalcenter.adapter.CountryAdapter; +import com.hjx.personalcenter.db.SaveParam; +import com.hjx.personalcenter.http.HttpCode; +import com.hjx.personalcenter.http.HttpManager; +import com.hjx.personalcenter.interfaces.DialogCallBack; +import com.hjx.personalcenter.model.CityInfo; +import com.hjx.personalcenter.model.CountyInfo; +import com.mylhyl.circledialog.BaseCircleDialog; +import com.mylhyl.circledialog.res.values.CircleDimen; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by wei on 2017/8/21. + */ + +public class CountryDialog extends BaseCircleDialog implements AdapterView.OnItemClickListener { + private CountryAdapter listadapter; + private ListView listView; + private DialogCallBack.CallBack mCallBack; + private ArrayList data = new ArrayList<>(); + public CountryDialog(DialogCallBack.CallBack callBack) { + this.mCallBack = callBack; + } + public static CountryDialog getInstance(DialogCallBack.CallBack callBack) { + CountryDialog dialogFragment = new CountryDialog(callBack); + dialogFragment.setCanceledBack(true); + dialogFragment.setCanceledOnTouchOutside(true); + dialogFragment.setRadius(CircleDimen.RADIUS); + dialogFragment.setWidth(0.5f); + dialogFragment.setGravity(Gravity.CENTER); + dialogFragment.setBackgroundColor(Color.WHITE); + return dialogFragment; + } + Handler handler = new Handler(){ + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what){ + case HttpCode.COUNTRY: + data.clear(); + data.addAll( (List)msg.obj); + listadapter.notifyDataSetChanged(); + break; + } + } + }; + + @Override + public View createView(Context context, LayoutInflater inflater, ViewGroup container) { + return inflater.inflate(R.layout.custom_adilog_provicelist, container, false); + } + + @Override + public void onActivityCreated(Bundle savedInstanceState) { + super.onActivityCreated(savedInstanceState); + listView = (ListView) getView().findViewById(R.id.listadapter); + String citys = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.CITYS); + listadapter = new CountryAdapter(data,getActivity()); + listView.setAdapter(listadapter); + listView.setOnItemClickListener(this); + try { + int a = Integer.parseInt(citys); + HttpManager.getInstance().countyinfo(getActivity(),a,handler); + } catch (NumberFormatException e) { + e.printStackTrace(); + } + + + } + + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.CITYS, ""+data.get(position).getRegionId()); + mCallBack.provinceOnItemClick(parent,view,position,id,3); + dismiss(); + + } +} diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java index eb6d7d6..781db63 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java @@ -3,6 +3,8 @@ package com.hjx.personalcenter.customdialog; import android.content.Context; import android.graphics.Color; import android.os.Bundle; +import android.os.Handler; +import android.os.Message; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; @@ -11,8 +13,10 @@ import android.widget.AdapterView; import android.widget.ListView; import com.hjx.personalcenter.R; +import com.hjx.personalcenter.activity.RegisterInfoActivity; import com.hjx.personalcenter.adapter.ProvincesAdapter; import com.hjx.personalcenter.db.SaveParam; +import com.hjx.personalcenter.http.HttpCode; import com.hjx.personalcenter.http.HttpManager; import com.hjx.personalcenter.interfaces.DialogCallBack; import com.hjx.personalcenter.model.ProvinceInfo; @@ -20,6 +24,7 @@ import com.mylhyl.circledialog.BaseCircleDialog; import com.mylhyl.circledialog.res.values.CircleDimen; import java.util.ArrayList; +import java.util.List; /** * 自定义年级列表对话框 @@ -33,6 +38,19 @@ public class ProvinceListDialog extends BaseCircleDialog implements AdapterView. private DialogCallBack.CallBack mCallBack; + Handler handler = new Handler(){ + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what){ + case HttpCode.PROVICES: + data.clear(); + data.addAll( (List)msg.obj); + listadapter.notifyDataSetChanged(); + break; + } + } + }; public ProvinceListDialog(DialogCallBack.CallBack callBack) { this.mCallBack = callBack; } @@ -57,28 +75,18 @@ public class ProvinceListDialog extends BaseCircleDialog implements AdapterView. public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); listView = (ListView) getView().findViewById(R.id.listadapter); - String provinces = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.PROVINCES); - if (provinces != null) { - - for (int i = 0; i < provinces.split(",").length; i++) { - ProvinceInfo.ProvincesBean provincesBean = new ProvinceInfo.ProvincesBean(); - provincesBean.setRegionName(provinces.split(",")[i] + "省"); - data.add(provincesBean); - } - } else { - HttpManager.getInstance().provices(getActivity()); - } - listadapter = new ProvincesAdapter(data,getActivity()); listView.setAdapter(listadapter); listView.setOnItemClickListener(this); + HttpManager.getInstance().provices(getActivity(),handler); } @Override public void onItemClick(AdapterView parent, View view, int position, long id) { //Toast.makeText(getActivity(), "你点击了第" + position + "个", Toast.LENGTH_LONG).show(); - mCallBack.provinceOnItemClick(parent,view,position,id); + SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.PROVINCES, ""+data.get(position).getRegionId()); + mCallBack.provinceOnItemClick(parent,view,position,id,1); dismiss(); } diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java index c366380..4057680 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java @@ -3,6 +3,8 @@ package com.hjx.personalcenter.customdialog; import android.content.Context; import android.graphics.Color; import android.os.Bundle; +import android.os.Handler; +import android.os.Message; import android.text.Editable; import android.text.TextWatcher; import android.view.Gravity; @@ -14,15 +16,19 @@ import android.widget.EditText; import android.widget.ListView; import com.hjx.personalcenter.R; +import com.hjx.personalcenter.activity.RegisterInfoActivity; import com.hjx.personalcenter.adapter.SchoolAdapter; import com.hjx.personalcenter.db.SaveParam; +import com.hjx.personalcenter.http.HttpCode; import com.hjx.personalcenter.http.HttpManager; import com.hjx.personalcenter.interfaces.DialogCallBack; +import com.hjx.personalcenter.model.CountyInfo; import com.hjx.personalcenter.model.SchoolInfo; import com.mylhyl.circledialog.BaseCircleDialog; import com.mylhyl.circledialog.res.values.CircleDimen; import java.util.ArrayList; +import java.util.List; /** * Created by h on 2017/8/21. @@ -51,7 +57,19 @@ public class SchoolListDialog extends BaseCircleDialog implements AdapterView.On dialogFragment.setBackgroundColor(Color.WHITE); return dialogFragment; } - + Handler handler = new Handler(){ + @Override + public void handleMessage(Message msg) { + super.handleMessage(msg); + switch (msg.what){ + case HttpCode.SCHOOL: + data.clear(); + data.addAll( (List)msg.obj); + listadapter.notifyDataSetChanged(); + break; + } + } + }; @Override public View createView(Context context, LayoutInflater inflater, ViewGroup container) { @@ -67,21 +85,17 @@ public class SchoolListDialog extends BaseCircleDialog implements AdapterView.On super.onActivityCreated(savedInstanceState); school_list = (ListView) getView().findViewById(R.id.listschooladapter); school_sech = (EditText) getView().findViewById(R.id.et_school_sech); - String gradens = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.SCHOOL); - if (gradens != null) { - - for (int i = 0; i < gradens.split(",").length; i++) { - SchoolInfo.DataBean dataBean = new SchoolInfo.DataBean(); - dataBean.setSchoolName(gradens.split(",")[i]); - data.add(dataBean); - } - } else { - HttpManager.getInstance().getschool(getActivity(),130102,14); - } + String citys = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.CITYS); listadapter = new SchoolAdapter(data, getActivity()); school_list.setAdapter(listadapter); school_list.setOnItemClickListener(this); school_sech.setOnClickListener(this); + try { + int a = Integer.parseInt(citys); + HttpManager.getInstance().getschool(getActivity(),a,14,handler); + } catch (NumberFormatException e) { + e.printStackTrace(); + } intiEditView(); diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpCode.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpCode.java index 091acf7..54c299f 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpCode.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpCode.java @@ -25,12 +25,12 @@ public class HttpCode { public static final int PASSWORD_FAIL = 10; //s省 public static final int PROVICES = 11; - //姓名 - public static final int CHANGENAME_SUCESS = 12; - //获取个人信息 - public static final int STUDENTINFO_SUCESS = 13; - //意见反馈 - public static final int FEEDBACL_SUCESS = 14; + //市 + public static final int CITYS = 12; + //区 + public static final int COUNTRY = 13; + //学校 + public static final int SCHOOL = 14; //私人订制查询 public static final int PRIVATEDZ = 15; diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java index 2f1b15d..fd85bc7 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java @@ -41,6 +41,7 @@ import org.json.JSONException; import org.json.JSONObject; import java.io.UnsupportedEncodingException; +import java.util.List; public class HttpManager { private static HttpManager instance; @@ -717,21 +718,18 @@ public class HttpManager { }); } ///获取学校 - public void getschool(final Context mContext,int regionId,int gradeId) { + public void getschool(final Context mContext, int regionId, int gradeId, final Handler handler) { HttpClient.getInstance().addHeader("Accept", "application/json"); HttpClient.getInstance().get(HttpUrl.schoolUrl+ "?regionId=" + regionId+ "&gradeId=" + gradeId, new AsyncHttpResponseHandler() { @Override public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { Log.e("test", "学校" + new String(arg2)); SchoolInfo schoolInfo = GsonTool.getPerson(new String(arg2), SchoolInfo.class);//解析json数据 - StringBuffer sb = new StringBuffer(); - for (int i = 0; i < schoolInfo.getData().size(); i++) { - sb.append(schoolInfo.getData().get(i).getSchoolName() + ","); - - } - Log.e("test", "学校" + sb.toString()); - SaveParam.getInstance().saveLoginParam(mContext, SaveParam.SCHOOL, "" + sb.toString()); - + List schoolInfoBeanList = schoolInfo.getData(); + Message message = Message.obtain(); + message.what = HttpCode.SCHOOL; + message.obj = schoolInfoBeanList; + handler.sendMessage(message); } @@ -767,7 +765,7 @@ public class HttpManager { ///省级接口 - public void provices(final Context mContext) { + public void provices(final Context mContext, final Handler handler) { HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); HttpClient.getInstance().get(HttpUrl.provinceUrl, new AsyncHttpResponseHandler() { @Override @@ -775,14 +773,11 @@ public class HttpManager { Log.e("test", "省" + new String(arg2)); ProvinceInfo provinceInfo = GsonTool.getPerson(new String(arg2), ProvinceInfo.class);//解析json数据 Log.e("test", "状态码" + provinceInfo.getStatus()); - StringBuffer sb = new StringBuffer(); - for (int i = 0; i < provinceInfo.getProvinces().size(); i++) { - sb.append(provinceInfo.getProvinces().get(i).getRegionName() + ","); - - } - Log.e("test", "省" + sb.toString()); - SaveParam.getInstance().saveLoginParam(mContext, SaveParam.PROVINCES, "" + sb.toString()); - + List provincesBeanList = provinceInfo.getProvinces(); + Message message = Message.obtain(); + message.what = HttpCode.PROVICES; + message.obj = provincesBeanList; + handler.sendMessage(message); } @@ -814,7 +809,7 @@ public class HttpManager { } //市级接口 - public void cityinfo(final Context mContext, int regionId) { + public void cityinfo(final Context mContext, int regionId , final Handler handler) { HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); HttpClient.getInstance().get(HttpUrl.cityUrl + "?regionId=" + regionId, new AsyncHttpResponseHandler() { @Override @@ -822,14 +817,11 @@ public class HttpManager { Log.e("test", "市" + new String(arg2)); Gson gson = new Gson(); CityInfo cityInfo = gson.fromJson(new String(arg2), CityInfo.class); - for (int i = 0; i < cityInfo.getCities().size(); i++) { - Log.e("test", "市" + cityInfo.getCities().get(i) - .getParentId()); - Log.e("test", "市" + cityInfo.getCities().get(i) - .getRegionId()); - Log.e("test", "市" + cityInfo.getCities().get(i).getRegionName() + ""); - - } + List cityInfoBeanList = cityInfo.getCities(); + Message message = Message.obtain(); + message.what = HttpCode.CITYS; + message.obj = cityInfoBeanList; + handler.sendMessage(message); } @@ -862,7 +854,7 @@ public class HttpManager { } //区县级接口 - public void countyinfo(final Context mContext, int parentId) { + public void countyinfo(final Context mContext, int parentId, final Handler handler) { HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); HttpClient.getInstance().get(HttpUrl.countyUrl + "?regionId=" + parentId, new AsyncHttpResponseHandler() { @Override @@ -870,14 +862,11 @@ public class HttpManager { Log.e("test", "区" + new String(arg2)); Gson gson = new Gson(); CountyInfo countyInfo = gson.fromJson(new String(arg2), CountyInfo.class); - for (int i = 0; i < countyInfo.getCounties().size(); i++) { - Log.e("test", "区" + countyInfo.getCounties().get(i) - .getParentId()); - Log.e("test", "区" + countyInfo.getCounties().get(i) - .getRegionId()); - Log.e("test", "区" + countyInfo.getCounties().get(i).getRegionName() + ""); - - } + List countyInfoInfoBeanList = countyInfo.getCounties(); + Message message = Message.obtain(); + message.what = HttpCode.COUNTRY; + message.obj = countyInfoInfoBeanList; + handler.sendMessage(message); } diff --git a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/interfaces/DialogCallBack.java b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/interfaces/DialogCallBack.java index 26f3e84..2c97dc3 100644 --- a/PersonalCenter/app/src/main/java/com/hjx/personalcenter/interfaces/DialogCallBack.java +++ b/PersonalCenter/app/src/main/java/com/hjx/personalcenter/interfaces/DialogCallBack.java @@ -12,7 +12,7 @@ import android.widget.AdapterView; public class DialogCallBack { public interface CallBack{ - void provinceOnItemClick(AdapterView parent, View view, int position, long id); + void provinceOnItemClick(AdapterView parent, View view, int position, long id,int type); } public interface CallBackView{ void provinceOnItemClick(Context context, LayoutInflater inflater, ViewGroup container);