我有两个片段,一个是列表视图,另一个是按钮和编辑文本。
当按下按钮时,当信息输入到db时,我试图清除编辑文本,然后清除来自同一个onClick方法的编辑文本。
有任何方法可以访问来自不同片段的编辑文本吗?
发布于 2015-12-24 00:28:10
所以首先您需要定义一个接口
public class FragmentA extends Fragment {
OnClickButton mCallback;
// Container Activity must implement this interface
public interface OnClickButton {
public void onClickClear();
}
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
// This makes sure that the container activity has implemented
// the callback interface. If not, it throws an exception
try {
mCallback = (OnClickButton) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString()
+ " must implement OnClickButton");
}
}
...
}然后你的第二个片段
public class FragmentB extends Fragment {
private EditText mEditText;
public void clearEditText() {
mEditText.setText("");
}
...
}最后一个是在您的活动中实现来自FragmentA的接口。
public static class MyActivity extends Activity
implements FragmentA.OnClickButton{
public void onClickClear() {
FragmentB fragmentB = (FragmentB)
getSupportFragmentManager().findFragmentById(R.id.fragment_b);
if (fragmentB != null) {
fragmentB.clearEditText();
}
}
...
}https://stackoverflow.com/questions/34445622
复制相似问题