《第一行代码》学习笔记一


package activitytest;

import com.example.activitytest.R;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.Toast;

public class FirstActivity extends Activity {
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);//隐藏标题栏,这句要在setContentView(R.layout.first_layout)前执行,不然会报错

		setContentView(R.layout.first_layout);//给当前活动加载一个布局,参数是R文件中的一个布局文件id,这里要导入一个包,别导入android包下的R文件
		Button button1 = (Button) findViewById(R.id.button_1);//用findViewById获取布局文件中定义的元素,该方法返回值是一个View对象
              button1.setOnClickListener(new OnClickListener() {
/*public void onClick(View v) {Toast.makeText(FirstActivity.this, "You clicked Button1",Toast.LENGTH_LONG).show();//makeText方法可以创建一个Toast对象,第一个参数是上下文,第二个参数是显示内容,第三个是显示时长}*///按钮功能一:显示一个toast标签public void onClick(View v) {finish();//按钮功能二:关闭程序}});}//重写菜单函数,函数名一旦写错,不会报错,但显示不出菜单,getMenuInflater()获得一个MenuInflater对象,再调用inflate方法创建菜单public boolean onCreateOptionsMenu(Menu menu) {//第一个参数是指定创建菜单的文件,第二个参数是菜单项添加到哪个Menu对象getMenuInflater().inflate(R.menu.main, menu);return true;//true表示允许菜单显示出来,false无法显示}//重写onOptionsItemSelected(),定义菜单响应时间public boolean onOptionsItemSelected(MenuItem item){switch(item.getItemId()){case R.id.add_item:Toast.makeText(this,"You clicked Add",Toast.LENGTH_SHORT).show();break;case R.id.remove_item:Toast.makeText(this,"You clicked remove",Toast.LENGTH_SHORT).show();break;default:}return true;}}

switch(表达式)
{
case 常量表达式1:语句1;
....
case 常量表达式2:语句2;
default:语句;
}
default就是如果没有符合的case就执行它,default并不是必须的.
case后的语句可以不用大括号.
一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break,利用这一特性可以让好几个case执行统一语句.

布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <Button 
        android:id="@+id/button_1"
        android:layout_width="match_parent"//与父元素一样宽
        android:layout_height="wrap_content"//刚好包含内容长度
        android:text="Button 1"//字符串最好存在string.xml文件,用@string引用,不然有警告
        />

</LinearLayout>

注册文件

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.activitytest"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="14"//最小版本
        android:targetSdkVersion="19" />//目标版本

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="activitytest.FirstActivity"//书上是.FirstActivity不过我不加前面的包名会报错
            android:label="@string/app_name">//标题栏内容
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />//声明这个活动是主活动
            </intent-filter>
        </activity>
    </application>

</manifest>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值