Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
376 views
in Technique[技术] by (71.8m points)

android - Null Pointer exception passing data from activity to Fragment

I have the url value in the MainActivity page and i need to pass this url value from ACtivity to Fragment. But when i click the button i'm getting null exception on the line of String url=getArguments().getString("btn_url");

Activity:

 Fragment fragment=new About();                             
        if (fragment != null) {

     FragmentTransaction transaction = getFragmentManager().beginTransaction();
       transaction.replace(R.id.frame_container, fragment, "TAG_FRAGMENT");
        transaction.addToBackStack(null);
        transaction.commit(); 

          Bundle bundle=new Bundle();
          bundle.putString("btn_url", URL);
About fragobj=new About();
     fragobj.setArguments(bundle);
    }

Fragment:

String url=getArguments().getString("btn_url");
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You need to commit after you set the fragments arguments. Change your code to this:

About fragobj=new About();    
Bundle bundle=new Bundle();
bundle.putString("btn_url", URL);        
fragobj.setArguments(bundle);
getFragmentManager().beginTransaction();
.replace(R.id.frame_container, fragobj, "TAG_FRAGMENT");
.addToBackStack(null);
.commit(); 

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...