java - Android 自定义事件监听器未触发

标签 java android

这是我的代码,我希望我的日志输出为 A B C,但它只是到 A 和 B。我从来没有实现过自己的事件监听器,但我不知道可能出了什么问题。关于如何实现这项工作有什么想法吗?

public class MyActivity extends Activity {
...
OnCompletedEvent listener;
...

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
}

public void ButtonPressed (View view){
    Log.d("LOG","A");
    longRunningTask();
    listener = new OnFinishedValidatingListener() {
    @Override
    public void onFinished() {
        // TODO Auto-generated method stub
        afterFinished();
    }
    };
}

public void longRunningTask(){
...
Log.d("LOG", "B");
}
public void afterFinished(){
...
Log.d("LOG", "C");
}
public static interface OnCompletedEvent {
    public void onFinished();
}
}

最佳答案

你不要在任何地方调用它,例如你需要在某个地方执行listener.onFinished()

您还应该在“长时间运行的任务”之前创建监听器,以防您的任务很快完成,否则您的监听器将为空

关于java - Android 自定义事件监听器未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19868293/

相关文章:

java - swing 小程序..jtogglebutton 大小为 6mb。我怎样才能减小尺寸

java - 时空高效的字典实现

android - 有没有办法告诉 Gradle 总是在缓存中搜索然后在线搜索?

java - 如何动态更改图像按钮的图像?

android - 如何将 Service 与 BroadcastReceiver 结合使用?

java - BufferedInputStream 到 ByteArrayOutputStream 非常慢

java - 对于高效的散列键,重写等于不是强制性的

java - Ant——从 Jar 中排除我的 JUnit 测试类

java - Android绘图应用程序中的撤消按钮

java - 如何将图标(如搜索、心形、选项)添加到 Android 卡片 View 的顶部,如图所示?