2 回答

TA贡献1842条经验 获得超13个赞
在片段中添加一个方法:
public void setOnClickListener(OnClickListener listener) { mListener = listener;}
调用Fragment的方法:
mFragment.setOnClickListener(new OnClickListener() { /* YOUR CODE HERE */ });

TA贡献1777条经验 获得超10个赞
我认为最好的方法是创建一个interfacewith方法onClick(),并将回调设置为从Activity到Fragment。
界面
public interface FragmentClickListener
{
void onClick();
}
在Fragment类中创建一个变量和方法以接收FragmentClickListener:
private FragmentClickListener listener;
public void setOnClickListener(FragmentClickListener listener)
{
this.listener = listener;
}
然后,在您的Fragment类的某些方法中,您可以像这样调用侦听器:
void someMethod()
{
if(listener != null) {
listener.onClick();
}
}
在您的Activity类中,如下定义回调:
fragment.setOnClickListener(new FragmentClickListener(){
@Override
public void onClick() {
//do something here
}
});
添加回答
举报