⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uicontroller.java

📁 手机电话本 初学者
💻 JAVA
字号:
/*
 * Created on 2005-2-3
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package net.garrey.util;
import net.garrey.midlet.PhoneTest;
import net.garrey.model.PhoneItem;

import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Alert;

import net.garrey.util.PhoneRecordStore;
import net.garrey.view.About;
import net.garrey.view.PhoneAdd;
import net.garrey.view.PhoneEdit;
import net.garrey.view.PhoneList;
import net.garrey.view.PhoneView;
/**
 * @author Administrator
 */
public class UIController {
	private PhoneTest phoneMidlet;
	private PhoneRecordStore phoneRecords;
	private PhoneList list;
	private PhoneAdd addForm;
	private PhoneView viewForm;
	private PhoneEdit editForm;
	private Alert alert;
	private About about;
	
	public UIController(PhoneTest phone){
		phoneMidlet=phone;
	}
	
	public void init(){
		phoneRecords=new PhoneRecordStore(this);
		//init ui
		list=new PhoneList("列表",this,phoneRecords.getPhones());
		addForm=new PhoneAdd("添加",this);
		viewForm=new PhoneView("查看",this);
		editForm=new PhoneEdit("修改",this);
		about=new About("关于");
		setCurrent(list);
	}
	//get method
	public PhoneRecordStore getPhoneRecords(){
		return phoneRecords;
	}
	
	public void setCurrent(Displayable disp){
		phoneMidlet.setCurrent(disp);
    }
	public void setCurrent(Alert alert, Displayable disp){
		phoneMidlet.setCurrent(alert, disp);
    }
	
	//定义事件ID内部类
    public static class EventID{
        private EventID(){
        }
        
        public static final byte EVENT_EXIT=0;//退出
        public static final byte EVENT_NEW_RECORD =1;//增加
        public static final byte EVENT_NEW_SAVE =2;//保存记录
        public static final byte EVENT_NEW_BACK =3;//保存记录
        public static final byte EVENT_DELETE =4;//删除
        public static final byte EVENT_VIEW_DETAIL =5;//察看详细
        public static final byte EVENT_VIEW_BACK= 6;//返回察看
        public static final byte EVENT_EDIT=7;//修改
        public static final byte EVENT_EDIT_BACK=8;//修改返回
        public static final byte EVENT_EDIT_SAVE=9;//保存修改
        public static final byte EVENT_ABOUT=10;//保存修改
    }
    
    //事件处理
    public void handleEvent( int eventID,Object[] args){   
    	switch (eventID)
        {   
    	    case EventID.EVENT_EXIT:
    	    {
    	    	phoneMidlet.exit(false);
    	    	break;
    	    }
    	    case EventID.EVENT_VIEW_DETAIL:
    	    {
    	        viewForm.setPhone((PhoneItem)args[0]);
    	        setCurrent(viewForm);
    	        break;
    	    }
    	    case EventID.EVENT_NEW_RECORD:
    	    {
    	        addForm.clear();
    	    	setCurrent(addForm);
    	    	break;
    	    }
    	    case EventID.EVENT_NEW_BACK:
    	    case EventID.EVENT_VIEW_BACK:    
    	    case EventID.EVENT_EDIT_BACK:
    	    {
    	    	setCurrent(list);
    	    	break;
    	    }
    	    case EventID.EVENT_NEW_SAVE:
    	    {
    	        PhoneItem item=new PhoneItem((String)args[0],(String)args[1]);
    	        int id=phoneRecords.addPhone(item);
    	        list.refresh(phoneRecords.getPhones());
    	        setCurrent(list);
    	        break;
    	    }
    	    case EventID.EVENT_EDIT:
    	    {
    	        editForm.setPhone((PhoneItem)args[0]);
    	        setCurrent(editForm);
    	        break;
    	    }
    	    case EventID.EVENT_EDIT_SAVE:
    	    {
    	        phoneRecords.updatePhone((PhoneItem)args[0]);
    	        list.refresh(phoneRecords.getPhones());
    	        setCurrent(list);
    	        break;
    	    }
    	    case EventID.EVENT_DELETE:
    	    {
    	        phoneRecords.deletePhone(((PhoneItem)args[0]).getId());
    	        list.refresh(phoneRecords.getPhones());
    	        setCurrent(list);
    	        break;
    	    }
    	    case EventID.EVENT_ABOUT:
    	    {
    	        setCurrent(about);
    	        break;
    	    }
         	default:
         	    break;
        }
    }
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -