gpt4 book ai didi

android - 从 dialogfragment 调用 fragment 方法

转载 作者:行者123 更新时间:2023-11-29 18:35:32 25 4
gpt4 key购买 nike

我正在尝试从 dialogfragment 调用 fragment 函数。我的应用程序基于 navigation drawer,其中包含 fragments 的容器。在我的一个 fragments 中,我发出了 retrofit 请求,我也可以从这个 fragment 打开 dialogfragment。但是我遇到了一个非常严重的问题 - 在从 dialogFragment 调用 fragment 函数后,我无法获得 SharedPreferences。这里我如何调用这个方法:

 btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dismiss();
JobList jobList = new JobList();
jobList.testFunction();
}
});

这是我的testFunction():

public void testFunction() {
sp = Objects.requireNonNull(getActivity()).getSharedPreferences("app_data", 0);
Log.w("MY_tag", sp.getString("access_token", ""));
}

我的 testFunction 只包含实验日志,因为我尝试从 sharedpreferences 获取数据但我只得到错误:

java.lang.NullPointerException

设置断点后,我明白我无法收到任何获取 sharedPreferences 的上下文。我不明白如何解决我的问题,如果 smb 帮助我解决问题,我会很高兴。

最佳答案

请尝试如下

btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dismiss();
JobList jobList = new JobList();
jobList.testFunction(view);
}
});

public void testFunction(View view) {
sp = Objects.requireNonNull(view.getContext()).getSharedPreferences("app_data", 0);
Log.w("MY_tag", sp.getString("access_token", ""));
}

关于android - 从 dialogfragment 调用 fragment 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54530231/

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