View.OnClickListener ocl = new View.OnClickListener(){
public void onClick(View v) {
this.ocl_action();
}
public void ocl_action() {
// TODO Auto-generated method stub
for(int i=0; i<5;i++){ }
Toast.makeText(ControllerProjMain.this,"hi",Toast.LENGTH_LONG).show();
}
}
};
如果我只打ocl.ocl_action();
答案 0 :(得分:0)
在侦听器主体外部定义ocl_action()函数,并在函数调用时删除关键字“ this”。
答案 1 :(得分:0)
查看代码中的更改。您需要在侦听器外部定义方法ocl_action
。
View.OnClickListener ocl = new View.OnClickListener(){
public void onClick(View v) {
this.ocl_action();
}};
public void ocl_action() {
// TODO Auto-generated method stub
for(int i=0; i<5;i++){
Toast.makeText(getApplicationContext(), "HI", Toast.LENGTH_LONG).show();
}
}
答案 2 :(得分:0)
首先,将您的函数拉出onClick()
方法之外。在onClick()
方法内部this
不会指出您的活动。因此,在进行函数调用时,请删除this
。
View.OnClickListener ocl = new View.OnClickListener(){
public void onClick(View v) {
ocl_action();
}};
public void ocl_action() {
// TODO Auto-generated method stub
for(int i=0; i<5;i++){
Toast.makeText(getApplicationContext(), "HI", Toast.LENGTH_LONG).show();
}
}