记事本
为了让我喜欢的雪姐高兴,所以给她做了这个APP,背景都是用她男朋友的照片。
1.更换app图标
2.设置布局文件
3.添加监听(一种新方法)
4.record页面跳转
5.record页面布局
6.sign_in页面跳转
7.sign_in页面布局
8.跳转到网页
9.传递简单数据
1.更换app图标
因为这是给雪姐写的APP,默认的图标太丑,所以将它换成雪姐男朋友的照片。
在新建项目时,到如下步骤时:

选择红框中的Browse,选择你喜欢的照片即可。
在下面的Shape中可以根据自己的需要选择喜欢的形状,我一般比较喜欢选Circle。
就这样我遇到了一个棘手的问题,如何将长方形的图片裁剪成圆形。
参考一下链接https://www.zhihu.com/question/35412484
2.设置布局文件
这次的很大一个不同就是设置背景图片,当然还是选择雪姐男朋友的照片啦。
将需要的背景图片复制到drawabel文件夹内

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/background_1"
    android:gravity="center_horizontal"
    android:orientation="vertical" >
    <TextView
        android:id="@+id/textView_welcome"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="80dp"
        android:text="@string/textView_welcome"
        android:textColor="#FFCCCC"
        android:textSize="40sp" />
    <TableLayout//表格布局很好用
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="80dp"
        android:gravity="center_horizontal" >
        <TableRow
            android:id="@+id/tableRow_1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal" >
            <Button
                android:id="@+id/button_1"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_1" />
            <Button
                android:id="@+id/button_2"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_2" />
            <Button
                android:id="@+id/button_3"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_3" />
        </TableRow>
        <TableRow
            android:id="@+id/tableRow_2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal" >
            
            <Button
                android:id="@+id/button_4"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_4" />
            <Button
                android:id="@+id/button_5"
               android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_5" />
            <Button
                android:id="@+id/button_6"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_6" />
        </TableRow>
        <TableRow
            android:id="@+id/tableRow_3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal" >
            
            <Button
                android:id="@+id/button_7"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_7" />
            <Button
                android:id="@+id/button_8"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_8" />
            <Button
                android:id="@+id/button_9"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_9" />
        </TableRow>
        <TableRow
            android:id="@+id/tableRow_4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal" >
            
            <Button
                android:id="@+id/button_cancel"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_cancel" />
            <Button
                android:id="@+id/button_0"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_0" />
            <Button
                android:id="@+id/button_accept"
                android:layout_width="90dp"
                android:layout_height="50dp"
                android:text="@string/button_accept" />
        </TableRow>
    </TableLayout>
    <Button
        android:id="@+id/button_help"
        android:layout_width="90dp"
        android:layout_height="50dp"
        android:layout_marginTop="20dp"
        android:text="@string/button_help" />
</LinearLayout>运行效果

雪姐表示很喜欢,我表示很开心。
3.添加监听(一种新方法)
在MainActivity.java中
声明变量
private Button button_1;
获得对象引用
button_1=(Button)this.findViewById(R.id.button_1);
声明用于存储点击的内容
private StringBuilder password=new StringBuilder();
注册监听器,匿名内部类
button_1.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View view) {
				// TODO Auto-generated method stub
				password.append("1");
			}
		});一种新的添加监听的方法,要牢记。其他button同上面一样,这里就不在多说。
4.页面跳转
这个对于我来讲一直是个难点
首先在layout下新建文件,我命名为record

该页面的布局暂且不用着急,我们首先来设置它的跳转,这样在页面布局的时候就可以随时运行到手机上查看效果。
MainActivity.java
public class MainActivity extends Activity {
	
	//声明变量
	private Button button_accept;	
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		
		//保存Activity的状态
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		//获得对象引用		
		Button button_accept=(Button)findViewById(R.id.button_accept);
                
                //注册监听器,匿名内部类
                button_accept.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View view) {
				// TODO Auto-generated method stub
				Intent intent=new 
                                Intent(MainActivity.this,record.class);
				startActivity(intent);//抄代码的时候应该仔细,不要漏抄
			}
		});
        
	}
}在这里要新建record.class文件,跟前面新建的布局文件同名。