package com.pwp.activity; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.view.Gravity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnLongClickListener; import android.widget.AbsListView.LayoutParams; import android.widget.LinearLayout; import com.pwp.borderText.BorderEditText; import com.pwp.borderText.BorderTextView; import com.pwp.constant.CalendarConstant; import com.pwp.dao.ScheduleDAO; import com.pwp.vo.ScheduleVO; public class ScheduleInfoView extends Activity { private LinearLayout layout = null; private BorderTextView textTop = null; private BorderTextView info = null; private BorderTextView date = null; private BorderTextView type = null; private BorderEditText editInfo = null; private ScheduleDAO dao = null; private ScheduleVO scheduleVO = null; private String scheduleInfo = ""; // 日程信息被修改前的内容 private String scheduleChangeInfo = ""; // 日程信息被修改之后的内容 private final LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT); @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); dao = new ScheduleDAO(this); // final LinearLayout.LayoutParams params = new // LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, // LayoutParams.WRAP_CONTENT); params.setMargins(0, 5, 0, 0); layout = new LinearLayout(this); // 实例化布局对象 layout.setOrientation(LinearLayout.VERTICAL); layout.setBackgroundResource(R.drawable.schedule_bk); layout.setLayoutParams(params); textTop = new BorderTextView(this, null); textTop.setTextColor(Color.BLACK); textTop.setBackgroundResource(R.drawable.top_day); textTop.setText("日程详情"); textTop.setHeight(47); textTop.setGravity(Gravity.CENTER); editInfo = new BorderEditText(ScheduleInfoView.this, null); editInfo.setTextColor(Color.BLACK); editInfo.setBackgroundColor(Color.WHITE); editInfo.setHeight(200); editInfo.setGravity(Gravity.TOP); editInfo.setLayoutParams(params); editInfo.setPadding(10, 5, 10, 5); layout.addView(textTop); Intent intent = getIntent(); // scheduleID = Integer.parseInt(intent.getStringExtra("scheduleID")); // 一个日期可能对应多个标记日程(scheduleID) String[] scheduleIDs = intent.getStringArrayExtra("scheduleID"); // 显示日程详细信息 for (int i = 0; i < scheduleIDs.length; i++) { handlerInfo(Integer.parseInt(scheduleIDs[i])); } setContentView(layout); } @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(1, menu.FIRST, menu.FIRST, "所有日程"); menu.add(1, menu.FIRST + 1, menu.FIRST + 1, "添加日程"); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case Menu.FIRST: Intent intent = new Intent(); intent.setClass(ScheduleInfoView.this, ScheduleAllView.class); startActivity(intent); break; case Menu.FIRST + 1: } return super.onOptionsItemSelected(item); } /** * 显示日程所有信息 */ public void handlerInfo(int scheduleID) { BorderTextView date = new BorderTextView(this, null); date.setTextColor(Color.BLACK); date.setBackgroundColor(Color.WHITE); date.setLayoutParams(params); date.setGravity(Gravity.CENTER_VERTICAL); date.setHeight(40); date.setPadding(10, 0, 10, 0); BorderTextView type = new BorderTextView(this, null); type.setTextColor(Color.BLACK); type.setBackgroundColor(Color.WHITE); type.setLayoutParams(params); type.setGravity(Gravity.CENTER); type.setHeight(40); type.setPadding(10, 0, 10, 0); type.setTag(scheduleID); final BorderTextView info = new BorderTextView(this, null); info.setTextColor(Color.BLACK); info.setBackgroundColor(Color.WHITE); info.setGravity(Gravity.CENTER_VERTICAL); info.setLayoutParams(params); info.setPadding(10, 5, 10, 5); layout.addView(type); layout.addView(date); layout.addView(info); /* * Intent intent = getIntent(); int scheduleID = * Integer.parseInt(intent.getStringExtra("scheduleID")); */ scheduleVO = dao.getScheduleByID(scheduleID); date.setText(scheduleVO.getScheduleDate()); type.setText(CalendarConstant.sch_type[scheduleVO.getScheduleTypeID()]); info.setText(scheduleVO.getScheduleContent()); // 长时间按住日程类型textview就提示是否删除日程信息 type.setOnLongClickListener(new OnLongClickListener() { @Override public boolean onLongClick(View v) { final String scheduleID = String.valueOf(v.getTag()); new AlertDialog.Builder(ScheduleInfoView.this).setTitle("删除日程") .setMessage("确认删除") .setPositiveButton("确认", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dao.delete(Integer.parseInt(scheduleID)); Intent intent1 = new Intent(); intent1.setClass(ScheduleInfoView.this, ScheduleAllView.class); startActivity(intent1); } }).setNegativeButton("取消", null).show(); return true; } }); } }