Android小笔记(一些方法)

本篇不作任何阅读以及用处,只作索引!


AndroidManifest.xml

活动注册需要放在 <application> 标签内,通过 <activity> 标签对活动进行注册。

  • android:name 来指定具体注册的活动,**填写具体包名下的某活动文件名称。由于 <manifest>
    已完成指定故此名称处只需要填写“.**”(一个点替代前面的一长串包名+活动名)
  • android:lable参数可以对指定活动中的标题栏进行命名。如果是给主活动指定 lable
    ,还会同时成为启动器(Launcher)中应用程序显示的名称。
<activity android:name="**"><activity>

AndroidManifest.xml文件中,在 <activity> 标签内,有以下 <intent-filter> 标签,用于配置程序主活动:

<intent-filter>
     <action android:name="android.intent.action.MAIN"/>
     <category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>

onCreate

onCreate的方法是在Activity创建时被系统调用,是一个Activity生命周期的开始。

public void onCreate (Bundle savedInstanceState){
       super.onCreate(savedInstanceState);
       setContentView(R.layout.**);
}

setContentView(R.layout.**)

用 setContentView() 方法给当前的活动加载一个布局,而在 setContentView() 方法中,我们一般会传入一个布局文件的id。项目中添加的任何资源都会在R文件中生成一个id,因此之前的布局文件**.xml已经添加到R文件中了。

findViewById(R.id.**)

获取 xml 布局文件中的具体元素/ widget 控件(如:Button、TextView 等),传入 R.id. ,来获得的实例,这个值则是在xml中通过android:id属性指定的。

setOnClickListener()

经常碰到代码,比如

public class MainActivity extends AppCompatActivity {
      private Button mButton;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                
            }
        });
    }
}

//onClicklistener是一个接口,不能实例化,这就是一个匿名内部类,这个类实现onClickListener
//然后被new 了,无形中传了一个对象进去,这个对象给了button/TextView中的mOnClicklistener,就是这家伙调用了onClick方法
//当然要是Activity实现了这个接口,就可以setonClickListener(this)
//this是当前类的一个对象
//传进去一个Activity对象给monclickListener,就是一个接口引用指向Activity对象,不过接口引用只能调用自己的方法

makeText()

public static Toast makeText (Context context, int resId, int duration)

context:使用上下文。通常您的应用程序或Activity对象。
resId:使用string资源的id去调用,或者可以使用格式化的文本。
duration:显示信息时间的长短。可以是length_short或length_long

onCreateOptionsMenu(Menu menu)

public boolean onCreateOptionsMenu(Menu menu) {
    /**
     * 此方法用于初始化菜单,其中menu参数就是即将要显示的Menu实例。 返回true则显示该menu,false 则不显示;
     * (只会在第一次初始化菜单时调用) Inflate the menu; this adds items to the action bar
     * if it is present.
     */
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}