package edu.hebtu.movingcampus.activity; import java.util.ArrayList; import edu.hebtu.movingcampus.R; import edu.hebtu.movingcampus.R.layout; import edu.hebtu.movingcampus.R.menu; import edu.hebtu.movingcampus.biz.ChooseCourseDao; import edu.hebtu.movingcampus.biz.RoomDao; import edu.hebtu.movingcampus.entity.ClassRoom; import edu.hebtu.movingcampus.entity.CourseEntity; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; import android.widget.Toast; public class ChooseCourseBrunchActivity extends Activity { //课程类的数组 private ArrayList<CourseEntity> CourseList = new ArrayList<CourseEntity>(); private TextView Title;//本activity的标题 private ListView CourseItem;//选课的listview private MyAdapter adapter;//适配器 private Intent intent;// 跳转到其他界面 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_choose_course_brunch); bindButton(); initData(); initView(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.choose_course_brunch, menu); return true; } /** * @return 本界面选课的标题 */ public String getCourseTitle(){ Bundle bundle = getIntent().getExtras(); String title = bundle.getString("title"); return title; } /** * @return 本界面选课的类型 */ public String getCourseType(){ Bundle bundle = getIntent().getExtras(); String type = bundle.getString("type"); return type; } /** * @aim 初始化视图 */ public void initView(){ this.Title = (TextView) findViewById(R.id.choosecourse_choosetype_tv); //设置标题 this.Title.setText(getCourseTitle()); this.CourseItem = (ListView) findViewById(R.id.choosecourse_courseitem_listview); this.adapter = new MyAdapter(); //绑定适配器 this.CourseItem.setAdapter(adapter); //绑定监听器 this.CourseItem.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { //获得课程名字 CourseEntity course = CourseList.get(arg2); String name = course.getCourseName(); String courseId = course.getCourseId(); // 跳转界面 toChooseCourseActionActivity(name,courseId); } }); } /** * @aim 绑定按钮控件 */ public void bindButton() { // 返回键的按钮 findViewById(R.id.btn_back).setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { // 关闭本activity ChooseCourseBrunchActivity.this.finish(); } }); } /** * @aim 初始化listview的数据源 */ public void initData(){ CourseList.clear(); ArrayList<CourseEntity> res = (ArrayList<CourseEntity>) new ChooseCourseDao( ChooseCourseBrunchActivity.this).getCourseMsg(false,getCourseType().trim()); Log.i("从服务器请求数据", "从服务器传回数据"); if (res != null) { Log.i("从服务器传回数据", "从服务器传回数据"); for (CourseEntity c : res) { CourseEntity course = new CourseEntity(); course.setCourseCredit(c.getCourseCredit()); course.setCourseGroup(c.getCourseGroup()); course.setCourseId(c.getCourseId()); course.setCourseIntroduce(c.getCourseIntroduce()); course.setCourseLeftNum(c.getCourseLeftNum()); course.setCourseName(c.getCourseName()); course.setCoursePro(c.getCoursePro()); course.setHourPerWeek(c.getHourPerWeek()); course.setSelectedOrNot(c.getSelectedOrNot()); course.setTimeOfExam(c.getTimeOfExam()); CourseList.add(course); } } else // TODO{ { Toast.makeText(getApplicationContext(), "接口获取错误", Toast.LENGTH_LONG) .show(); for(int i=0;i<3;i++){ CourseEntity course = new CourseEntity(); course.setCourseCredit("3.0"); course.setCourseGroup("文科"); course.setCourseId("222323233"); course.setCourseIntroduce("介绍"); course.setCourseLeftNum("122"); course.setCourseName("语文"); course.setCoursePro("必修"); course.setHourPerWeek("4.0"); course.setSelectedOrNot("否"); course.setTimeOfExam("2011年"); CourseList.add(course); } } } /** * @param extra * 要传给下一个activity的数据 */ public void toChooseCourseActionActivity(String name,String courseId) { this.intent = new Intent(ChooseCourseBrunchActivity.this, ChooseCourseActionActivity.class); this.intent.putExtra("title", name); this.intent.putExtra("courseId", courseId); ChooseCourseBrunchActivity.this.startActivityForResult(this.intent, 9); } /** * @author leijie *@aim 自定义适配器 */ private class MyAdapter extends BaseAdapter{ @Override public int getCount() { // TODO Auto-generated method stub return CourseList.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return CourseList.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub convertView = LayoutInflater.from(getApplicationContext()).inflate(R.layout.choosecourse_courseitem_item, null); TextView name = (TextView) convertView.findViewById(R.id.choosecourse_courseitem_book); TextView type = (TextView) convertView.findViewById(R.id.choosecourse_courseitem_type); TextView credit = (TextView) convertView.findViewById(R.id.choosecourse_courseitem_credit); TextView select = (TextView) convertView.findViewById(R.id.choosecourse_courseitem_select); TextView left = (TextView) convertView.findViewById(R.id.choosecourse_courseitem_left); CourseEntity course = CourseList.get(position); name.setText(course.getCourseName()); type.setText(course.getCoursePro()); credit.setText(course.getCourseCredit()); select.setText(course.getSelectedOrNot()); left.setText(course.getCourseLeftNum()); return convertView; } } }