package cn.coderss.activity; import java.util.ArrayList; import java.util.HashMap; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import net.tsz.afinal.http.AjaxCallBack; import net.tsz.afinal.http.AjaxParams; import cn.coderss.api.FssApi; import cn.coderss.bean.PorblemAddCateBean; import cn.coderss.bean.TeacherCateBean; import cn.coderss.edu.R; import cn.coderss.ui.BootstrapButton; import cn.coderss.util.L; import cn.coderss.util.PreferenceConstants; import cn.coderss.util.PreferenceUtils; import cn.coderss.util.T; import android.R.integer; import android.annotation.SuppressLint; import android.app.ActionBar; import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.database.DataSetObserver; import android.os.Bundle; import android.view.LayoutInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.EditText; import android.widget.ListView; import android.widget.Spinner; import android.widget.SpinnerAdapter; import android.widget.TextView; public class ProblemAddActivity extends Activity { ListView listview_cate; EditText tag, content; Spinner teacher; BootstrapButton send; String techerid; ArrayList<String> datalist; ArrayList<String> datalistid; ProgressDialog progress_dia; AlertDialog dia; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_problem_add); initView(); // 载入技术分类数据 loadCateData(); // 载入老师数据; loadTeacherData(); setActionBar(); } @SuppressLint("NewApi") public void setActionBar() { ActionBar bar = getActionBar(); bar.setDisplayHomeAsUpEnabled(true); bar.setDisplayShowCustomEnabled(true); bar.setDisplayShowHomeEnabled(false); bar.setTitle("返回"); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: finish(); break; } return true; } public void loadCateData() { FssApi.getHttp().get(FssApi.GETTYPE, new AjaxCallBack<Object>() { @Override public void onSuccess(Object t) { super.onSuccess(t); PorblemAddCateBean bean = new Gson().fromJson(t.toString(), PorblemAddCateBean.class); L.i("我获得的分类数据:" + bean.toString()); datalist = bean.getCust_names(); datalistid = bean.getCust_ids(); listview_cate.setAdapter(new BaseAdapter() { @Override public View getView(int arg0, View arg1, ViewGroup arg2) { View mview = LayoutInflater.from( getApplicationContext()).inflate( R.layout.adapter_problemadd_cate, null); TextView title = (TextView) mview .findViewById(R.id.title); title.setText(datalist.get(arg0)); return mview; } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return arg0; } @Override public Object getItem(int arg0) { // TODO Auto-generated method stub return arg0; } @Override public int getCount() { // TODO Auto-generated method stub return datalist.size(); } }); // 将点击的标签放进edittext listview_cate.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { if (tag.getText().toString().equals("")) { tag.setText(datalistid.get(arg2)); } else { String content = tag.getText().toString(); String[] cate = content.split(","); for (String string : cate) { if (datalistid.get(arg2).equals(string)) { return; } } tag.setText(tag.getText() + "," + datalistid.get(arg2)); } } }); } }); ; } public void loadTeacherData() { FssApi.getHttp().get(FssApi.PROBLEMGETTEACHER, new AjaxCallBack<Object>() { @Override public void onSuccess(Object t) { super.onSuccess(t); final ArrayList<TeacherCateBean> techer_data = new Gson().fromJson( t.toString(), new TypeToken<ArrayList<TeacherCateBean>>() { }.getType()); L.i("教师数据" + techer_data.toString()); ArrayList<String> items = new ArrayList<String>(); final ArrayList<String> items2 = new ArrayList<String>(); for (TeacherCateBean bean : techer_data) { items.add(bean.getName()); items2.add(bean.getId()); } ArrayAdapter<String> adapter = new ArrayAdapter<String>( getApplicationContext(), android.R.layout.simple_dropdown_item_1line, items); teacher.setAdapter(adapter); teacher.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { techerid = items2.get(arg2); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); } }); } public void initView() { listview_cate = (ListView) findViewById(R.id.listview_cate); tag = (EditText) findViewById(R.id.tag); content = (EditText) findViewById(R.id.content); content.clearFocus(); teacher = (Spinner) findViewById(R.id.teacher); send = (BootstrapButton) findViewById(R.id.send); send.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String str_content = content.getText().toString(); String keywords = tag.getText().toString(); if (str_content.equals("") || keywords.equals("")) { T.showShort(getApplicationContext(), "请填写完整后再提问"); } if (techerid.equals("") || teacher == null) { T.showShort(getApplicationContext(), "请选择老师"); } L.i("我提出问题的内容:" + str_content); AjaxParams p = new AjaxParams(); p.put("tid", techerid); p.put("keyword", keywords); p.put("content", str_content); p.put("uid", PreferenceUtils.getPrefString( getApplicationContext(), PreferenceConstants.ID, "30")); L.i(p.toString()); FssApi.getHttp().post(FssApi.PROBLEMADD, p, new AjaxCallBack<Object>() { @Override public void onSuccess(Object t) { L.i(t.toString()); super.onSuccess(t); if (t.equals("no")) { T.showShort(getApplicationContext(), "发布失败"); } else if (t.equals("yes")) { T.showShort(getApplicationContext(), "发布成功"); finish(); } else { T.showShort(getApplicationContext(), "问题已经存在"); finish(); } } }); } }); } }