【发布时间】:2018-02-18 05:45:56
【问题描述】:
我在堆栈上的任何地方都没有找到明确的解决方案。
这是我的基本设置
public class Activity1 extends AppCompatActivity
{
private OnAttributesUpdatedListener onAttributesUpdatedListener;
public interface OnAttributesUpdatedListener
{
public void onAttributesUpdated();
}
public void setTargetFragment(Fragment fragment)
{
this.onAttributesUpdatedListener = (OnAttributesUpdatedListener) fragment;
}
private void whenFinishedSomethingCallback()
{
onAttributesUpdatedListener.onAttributesUpdated();
}
}
public class Fragment1 extends Fragment implements Activity1.OnAttributesUpdatedListener
{
button.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view) {
if(rivalButtonClick == 0)
{
Activity1 activity1 = new Activity1();
activity1.setTargetFragment(Fragment1.this);
startActivity(new Intent(getActivity(), activity1.getClass()));
}
}
});
}
我得到一个空指针异常并在:onAttributesUpdatedListener.onAttributesUpdated(); 上崩溃,因为由于某种原因,我的侦听器从未正确设置。这样做的正确方法是什么?
【问题讨论】:
-
我认为你必须颠倒你的逻辑。
-
@Mr.Hyde 该链接用于反向
-
我想在fragment中实现接口而不是在activity中
-
@TheQ 所以请更改问题的标题。
标签: android android-fragments android-activity interface callback