我有一个接受几个参数的静态方法。在该方法中,我正在创建一个新对象并为其附加一个新侦听器。问题是侦听器块需要访问外部静态方法变量,但我不知道如何引用它们。我知道如何使用非静态方法来实现这一点,但不是静态方法。
这是代码:
v.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_UP:
((Activity)*context*).startActivityForResult(*intent*, 0);
break;
}
return true;
}
});
星号包围的上下文和意图变量是传递给静态方法的对象。由于 OnTouchListener 是一个内部块,它不知道这些对象。我怎样才能引用它们?