gpt4 book ai didi

java - 自定义监听器/接口(interface)在 Android 中不起作用

转载 作者:行者123 更新时间:2023-12-01 17:10:18 24 4
gpt4 key购买 nike

我是构建自定义接口(interface)类的新手。在我的应用程序中,我将构建一个自定义监听器来调用 MainActivity 中的特定方法。当我执行代码时,我收到一个错误...这是日志:

java.lang.NullPointerException: Attempt to invoke interface method 'void com.robertot.timereport.inteface.CustomInterface.onUpdateListJob()' on a null object reference
at com.robertot.timereport.pages.MyFragment$3.onClick(NewJobFragment.java:217)
at android.view.View.performClick(View.java:4445)
at android.view.View$PerformClick.run(View.java:18446)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5144)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:611)

这是我的代码:

自定义接口(interface).java

public interface CustomInterface {
public void onUpdateListJob();
}

MyFragment.java

public class MyFragment extends Fragment {
private CustomInterface listener;

@Override
public void onActivityCreated(Bundle savedInstanceState) {
//...
listener.onUpdateListJob(); // CRASH HERE (Line 217)
//...
}
}

MainActivity.java

public class MainActivity extends FragmentActivity implements CustomInterface {
//...

@Override
public void onUpdateListJob() {
// do works...
}
}

我做错了什么?

最佳答案

listener 从未被分配过。我在任何地方都没有看到 listener = [something]

关于java - 自定义监听器/接口(interface)在 Android 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24046836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com