我没有从另一个片段发送的下一个片段中获取数据

时间:2017-08-04 02:15:31

标签: android fragment

我试图引用类似的问题,但我无法得到解决方案。实际上我正在尝试将一个字符串从一个片段发送到另一个片段,但在接收数据的同时在下一个片段中它显示空点异常错误。

我的代码:

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();

1 个答案:

答案 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