首先建立一个android工程adtest,这个实现有很多种方法。
方法1:只改动MainActivity.java文件
MainActivity.java代码:
package com.example.adtest;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import java.util.Date;
public class MainActivity extends Activity implements View.OnClickListener{
Button btn;
@Override
public void onCreate(Bundle icicle){
super.onCreate(icicle);
btn = new Button(this);
btn.setOnClickListener(this); //监听事件绑定到本Activity
updateTime();
setContentView(btn);
}
public void onClick(View view){
updateTime();
}
public void updateTime(){
btn.setText(new Date().toString());
}
}
方法2:改动布局文件activity_main.xml和MainActivity.java文件
2.1 单击的监听事件,通过MainActivity继承接口View.OnClickListener重写onClick()实现.
activity_main.xml代码:
<?xml version="1.0" encoding="utf-8"?>
<Button xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/btn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text=" "/>
MainActivity.java代码:
package com.example.adtest;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import java.util.Date;
public class MainActivity extends Activity implements View.OnClickListener{
Button btn;
@Override
public void onCreate(Bundle icicle){
super.onCreate(icicle);
setContentView(R.layout.activity_main); //显示布局UI
btn = (Button)findViewById(R.id.btn); //用布局文件中的Button,通过Button的id找到Button初始化btn
btn.setOnClickListener(this); //监听事件绑定到本Activity
updateTime();
setContentView(btn);
}
public void onClick(View view){
updateTime();
}
public void updateTime(){
btn.setText(new Date().toString());
}
}
2.2单击的监听事件,通过布局文件activity_main.xml里的Button元素属性android:onClick="updateTime"关联单击后要执行的函数updateTime()实现.
activity_main.xml代码:
<?xml version="1.0" encoding="utf-8"?>
<Button xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/btn1"
android:onClick="updateTime"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text=" "/>
MainActivity.java代码:
package com.example.adtest;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import java.util.Date;
public class MainActivity extends Activity{
Button btn;
@Override
public void onCreate(Bundle icicle){
super.onCreate(icicle);
setContentView(R.layout.activity_main); //显示布局UI
btn = (Button)findViewById(R.id.btn1); //用布局文件中的Button,通过Button的id找到Button初始化btn
// btn = (Button)findViewById(R.id.button);
updateTime(btn);
setContentView(btn); //显示按钮
}
//函数已在布局文件中与Button的onClick事件关联,单击按钮后,时间会更新
public void updateTime(View theButton){
btn.setText(new Date().toString());
}
}