刚学Android,问一个小白问题
在一个拨打电话的小程序里,主要代码如下:
public class MainActivity extends ActionBarActivity {
private EditText et_number;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bt_dail=(Button) this.findViewById(R.id.bt_dail);
et_number=(EditText) this.findViewById(R.id.et_number);
bt_dail.setOnClickListener(new MyListener());
}
private class MyListener implements OnClickListener{
public void onClick(View v){
String number=et_number.getText().toString().trim();
if(TextUtils.isEmpty(number))
{
Toast.makeText(MainActivity.this,"号码不能为空",0).show();
return;
}
Intent intent=new Intent();
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:"+number));
startActivity(intent);
}
}
我的问题是:打开应用程序后,首先应该执行的是onCreate()这个方法,输入号码之前private变量et_number应该为空,然后当输入号码的时候,这个et_number是怎么触发的随着你的输入而改变的呢?难道说每次改变输入,这句et_number=(EditText) this.findViewById(R.id.et_number)会被反复执行吗?不知道各位看懂我意思没,求大牛从面向过程的角度解释下哈!