我试图引用类似的问题,但我无法得到解决方案。实际上我正在尝试将一个字符串从一个片段发送到另一个片段,但在接收数据的同时在下一个片段中它显示空点异常错误。
我的代码:
public void onClick(View view) {
switch(view.getId()){
case R.id.proceed_button:
user_email=editText.getText().toString().trim();
frag_two si=new frag_two();
Bundle args=new Bundle();
args.putString("this_email",user_email);
si.setArguments(args);
break;}}
public String sendString(){
return emailT.getText().toString().trim();
}
集装箱活动: (在方法内) frag gi = new frag(); String email_id = gi.sendString();
答案 0 :(得分:1)
修改
对于片段间或片段到活动的通信,您应该使用接口和回调监听器,如this
对于片段的活动:
在onCreate()方法中尝试此操作,检查this以获取更多信息
Bundle bundle = this.getArguments();
if (bundle != null) {
String myString = bundle.getString("this_email");
}
简单的方法,我会在构造函数中传递它,或者在构造函数之后创建一个方法,以防它被过载。
public class TestFragment extends Fragment {
private String mString;
public TestFragment {
}
public void sendString(String str){
this.mString = str;
}
}
在活动中,
TestFragment testFragment = new TestFragment();
testFragment.sendString(user_email);
# add other codes