记事本
为了让我喜欢的雪姐高兴,所以给她做了这个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文件,跟前面新建的布局文件同名。