新浪微博核心主UI设计代码
package cn.cju.weibo.logic;
import cn.cju.weibo.ui.HomeActivity; import cn.cju.weibo.ui.MainActivity; import cn.cju.weibo.ui.MoreOptActivity; import cn.cju.weibo.ui.MyInfoActivity; import cn.cju.weibo.ui.R;
import cn.cju.weibo.ui.SearchActivity; import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent; import android.view.Menu;
import android.view.MenuItem; import android.widget.Toast;
public abstract class WeiboActivity extends Activity {//所有Activity的抽像类
public abstract void init(); //初始化方法,各自Activity去实现
public abstract void refresh(Object ...prams);//刷新方法,各自Activity去实现
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MainService.allActivity.add(this);//在Activity启动时执行将这个Activity添加到保存所有Activity的集合中去
init();
}
@Override
protected void onDestroy() {
super.onDestroy();
MainService.allActivity.remove(this);//在这个Activity被销毁的时候,从集合中移除这个Activity
}
@Override
protected void onStart() {//在Activity启动时调用其初始化方法,也就是检查网络的方法
super.onStart();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {//点击退出时所弹出的提示,每个Activity都有这个方法
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
MainService.alertExit(this);
return true;
}
return super.onKeyDown(keyCode, event);
}
// 创建按下MUME按钮后所提示的菜单
@Override
public boolean onCreateOptionsMenu(Menu menu) {//谁调用这个方法,这个this就是谁
//如果是这几个Activity就不产这个MENU菜单
if(this instanceof MyInfoActivity)
return false;
if(this instanceof SearchActivity)
return false;
if(this instanceof MoreOptActivity)
return false;
").setIcon(R.drawable.setting); menu.add(1, 1, 1, "设置
menu.add(1, 2, 2, "帐号").setIcon(R.drawable.switchuser);
menu.add(1, 3, 3, "官方微博").setIcon(R.drawable.officialweibo);
").setIcon(R.drawable.comment); menu.add(2, 4, 1, "意见反馈
menu.add(2, 5, 2, "关于").setIcon(R.drawable.about);
menu.add(2, 6, 3, "退出").setIcon(R.drawable.menu_exit);
return super.onCreateOptionsMenu(menu);
}
// MENU菜单的点击事件
@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
Toast.makeText(this,
item.getItemId() + ":" + item.getTitle(), 1000).show();
switch (featureId) {
case 1:// 设置
break;
case 2:// 帐号
break;
case 3:// 官方微博
break;
case 4:// 意见反馈
break;
case 5:// 关于
break;
case 6:// 退出
break;
default:
break;
}
return super.onMenuItemSelected(featureId, item);
}
}