标签:
刚开始学习,新手,欢迎拍砖和鄙视。
直接入题,新版Android的主要代码分析:
1 package com.bslk.helloworld; 2部分还不清楚,一遍学一遍完善吧!哈哈
/*1.这里的导入包,会有报警告的地方,因为没有使用,已干掉了,其他不管,现在应该0Err0Warn*/
/*2.这是一些导入的包,具体的不解释,不纠结,不懂自己度娘,问了我会鄙视你的*/ 3 import android.support.v7.app.ActionBarActivity; 4 import android.support.v4.app.Fragment; 5 import android.os.Bundle; 6 import android.view.LayoutInflater; 7 import android.view.Menu; 8 import android.view.MenuItem; 9 import android.view.View; 10 import android.view.ViewGroup; 11
/*3.新版的是继承的ActionBarActivity,老版的教程是Activity,为了兼容,现在都强制用了,百度会告诉你怎么改回去,
个人觉得这样的无所谓,看得懂就行,能用就行,管他官方用什么样的实现,想改的都是自己习惯了吧大概*/ 12 public class MainActivity extends ActionBarActivity { 13
/*4.这是Activity建立的时候一定会调用的onCreate()方法,
第一行是声明
然后是继承原来的onCreate()方法,
然后是载入activity_main这个视图,一般来说是在XML里定义的*/ 14 @Override 15 protected void onCreate(Bundle savedInstanceState) { 16 /*在activity的生命周期中,只要离开了可见阶段,或者说失去了焦点,activity就很可能被进程终止了,被KILL掉了!
这时候,就需要有种机制,能保存当时的状态,这就是savedInstanceState的作用。*/
super.onCreate(savedInstanceState);
/*加载界面*/ 17 setContentView(R.layout.activity_main); 18 /*添加占位符片段,把一个屏切成几块这样,像平板的话就可以显示很多东西了。看这个吧->http://blog.csdn.net/kernel_learner/article/details/8449126*/ 19 if (savedInstanceState == null) { 20 getSupportFragmentManager().beginTransaction() 21 .add(R.id.container, new PlaceholderFragment()).commit(); 22 } 23 } 24
/*添加菜单*/ 25 @Override 26 public boolean onCreateOptionsMenu(Menu menu) { 27 28 // Inflate the menu; this adds items to the action bar if it is present.
/*按照真实的菜单项的文件添加菜单项*/ 29 getMenuInflater().inflate(R.menu.main, menu); 30 return true; 31 } 32
/*菜单响应*/ 33 @Override 34 public boolean onOptionsItemSelected(MenuItem item) { 35 // Handle action bar item clicks here. The action bar will 36 // automatically handle clicks on the Home/Up button, so long 37 // as you specify a parent activity in AndroidManifest.xml. 38 /*获取按下菜单项的对应ID号*/
int id = item.getItemId();
/*根据菜单ID,做出对应的反应,生成的settings按了没反应,就是这里什么都没有实现*/ 39 if (id == R.id.action_settings) { 40 return true; 41 }
/*返回*/ 42 return super.onOptionsItemSelected(item); 43 } 44 45 /** 46 * A placeholder fragment containing a simple view. 47 */
/*这个在上面调用了,占位符片段?什么鬼,好像是添加多个fragment,以适应平板的多块显示,提升用户体验,而在手机等终端会一个个显示。*/ 48 public static class PlaceholderFragment extends Fragment { 49 50 public PlaceholderFragment() { 51 } 52 53 @Override 54 public View onCreateView(LayoutInflater inflater, ViewGroup container, 55 Bundle savedInstanceState) { 56 View rootView = inflater.inflate(R.layout.fragment_main, container, 57 false); 58 return rootView; 59 } 60 } 61 62 }
标签:
原文地址:http://www.cnblogs.com/bslk/p/4283793.html