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.FinalHttp; import net.tsz.afinal.http.AjaxCallBack; import net.tsz.afinal.http.AjaxParams; import cn.coderss.adapter.TestDetailAdapter; import cn.coderss.api.FssApi; import cn.coderss.bean.AnswerBean; import cn.coderss.bean.QuestionBean; import cn.coderss.edu.R; import cn.coderss.util.L; import cn.coderss.util.PreferenceConstants; import cn.coderss.util.PreferenceUtils; import android.annotation.SuppressLint; import android.app.ActionBar; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; import android.widget.TextView; public class TestDetailActivity extends Activity { Context mcontext; ArrayList<QuestionBean> datalist = new ArrayList<QuestionBean>(); TestDetailAdapter myadapter; ListView mlistview; public String id; public HashMap<Integer, String> manswer; public String title = ""; public TextView titleView; AlertDialog dia; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mcontext = this; setContentView(R.layout.activity_test_detail); Intent it = getIntent(); if (it.getStringExtra("id") != null) { id = it.getStringExtra("id"); title = it.getStringExtra("title"); } titleView = (TextView) findViewById(R.id.title); titleView.setText(title); loadData(); setActionBar(); } public void loadData() { String url = FssApi.QUEST + "&id=" + id; FssApi.getHttp().get(url, new AjaxCallBack<Object>() { @Override public void onSuccess(Object t) { super.onSuccess(t); datalist = new Gson().fromJson(t.toString(), new TypeToken<ArrayList<QuestionBean>>() { }.getType()); if (datalist == null) { dia = new AlertDialog.Builder(mcontext).setTitle("提 示") .setMessage("该试卷无试题.....\n^_^,请返回") .setNegativeButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface arg0, int i) { dia.dismiss(); finish(); } }).show(); } initView(); } }); } public void initView() { manswer = new HashMap<Integer, String>(); myadapter = new TestDetailAdapter(datalist, mcontext, manswer); mlistview = (ListView) findViewById(R.id.mylistview); mlistview.setAdapter(myadapter); mlistview.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> vg, View v, int position, long arg3) { QuestionBean bean = datalist.get(position); L.i("我现在选择的题目"); } }); } @SuppressLint("NewApi") public void setActionBar() { ActionBar bar = getActionBar(); bar.setDisplayHomeAsUpEnabled(true); bar.setDisplayShowCustomEnabled(true); bar.setDisplayShowHomeEnabled(false); bar.setTitle("返回"); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.test_menu, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: finish(); break; case R.id.toanswer: AjaxParams params = new AjaxParams(); params.put("tid", id); params.put("test", manswer.toString()); params.put("uid", PreferenceUtils.getPrefString(mcontext, PreferenceConstants.ID, "30")); FssApi.getHttp().post(FssApi.SCORE, params, new AjaxCallBack<Object>() { @Override public void onSuccess(Object t) { super.onSuccess(t); final AlertDialog dia = new AlertDialog.Builder( mcontext) .setTitle("您的成绩") .setMessage("你考试成绩是:" + t.toString()) .setNegativeButton("确定", new OnClickListener() { @Override public void onClick( DialogInterface arg0, int arg1) { arg0.dismiss(); } }).show(); } }); break; default: break; } return true; } }