【发布时间】:2011-11-11 10:58:37
【问题描述】:
我的主类有一个名为 commitChanges() 的公共方法。 我的布局包含扩展的 EditTexts,可以检测何时按下后退按钮,如下所示:Get back key event on EditText
现在,当检测到后退按钮按下时,我需要执行 commitChanges,它将内容存储到一个数组中。但是,commitChanges 需要访问活动的列表视图。
问题是:如何访问主Activity的commitChange函数?我将需要主要活动的实例。这是扩展EditText的代码:
public class BackText extends EditText{
private static final String TAG = "baby";
public BackText(Context context) {
super(context);
}
public BackText(Context context, AttributeSet attrs) {
super(context, attrs);
}
public BackText(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) &&
event.getAction() == KeyEvent.ACTION_UP) {
Log.d(TAG,"keypad exit");
commitChange(this);
return false;
}
return super.dispatchKeyEvent(event);
}
}
请注意,我是初学者,这对我来说非常先进。 注2:这与服务/多项活动无关。 BackTexts 放置在主活动中。
【问题讨论】:
标签: android