首先建立一个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()); } }