Android程序开发的基本框架
16lz
2021-01-23
研究了一个礼拜的android,算是基本搞清了它的开发框架,我是做j2me开发的,所以时不时的会把它和j2me做比较,比如:高级界面,低级界面......
public class App extends Activity { public App () {//构造函数不用说了 } public void onCreate(Bundle savedInstanceState) {//界面初始化的时候调用 super.onCreate(savedInstanceState); setContentView(R.layout.skeleton_activity);//显示布局界面,xml有定义,指高级界面。 //setContentView(new MyView(this));//显示布局界面,指低级界面,MyView它是内部类,后面有介绍。 //以下是其他数据初始化 ...... } public boolean onCreateOptionsMenu(Menu menu) {//初始化Menu菜单选择项 super.onCreateOptionsMenu(menu); //添加菜单项,比如: menu.add(0, OK_ID, 0, R.string.ok).setShortcut('2', 'v');//设置快捷键 //添加其他菜单项。。。。。。 return true; } public boolean onPrepareOptionsMenu(Menu menu) {// super.onPrepareOptionsMenu(menu); //这里可以事先设置菜单的可见性,如果都可见,可以不设置 menu.findItem(OK_ID).setVisible(true);//设置菜单项可见性 return true; } public boolean onOptionsItemSelected(MenuItem item) {//选择了一个菜单项的时候调用 //这里可以预先处理想要的变量 switch (item.getItemId()) { case BACK_ID://一项一项的处理想要做的,不用我介绍了吧 return true; ............. } return super.onOptionsItemSelected(item); } //以下是内部类MyView,如果你用的是高级界面(基于xml),此类可以不要;如果是低级界面嘛,你说呢? public class MyView extends View(){ public MyView(Context c){ super(c); //初始化其他东西。。。。。 } protected void onSizeChanged(int w, int h, int oldw, int oldh) {//不常用,可不写。 super.onSizeChanged(w, h, oldw, oldh); } protected void onDraw(Canvas canvas) {//几乎必需写 canvas.drawXXX(); //invalidate();//如果有动画,则必需加上。 } public boolean onTouchEvent(MotionEvent event) { //触摸前做点什么 switch (event.getAction()) { case MotionEvent.ACTION_DOWN: invalidate();//如果要动画或刷新,则加上这句;通常这里好像都要加上的;下同 break; case MotionEvent.ACTION_MOVE: invalidate(); break; case MotionEvent.ACTION_UP: invalidate(); break; } return true; } } }}
更多相关文章
- Android通用初始化Activity模板
- Android编程获取网络连接状态及调用网络配置界面
- Android 遍历界面控件
- QT For Android中,设置界面字体
- android 通过反射访问内部类(也可访问其他apk中的类)
- Android常用跳转系统设置界面
- rem初始化设置
- 仿IOS Launch 欢迎界面
- Android实现界面完全全屏