将文本从 fragmentactivity 导入到 fragment

Import text from fragmentactivity to fragment

我想同时为不同的网站创建通用搜索 time.So 我将 EditText 的文本从 activity 导入片段 activity.Now 如何将该文本导入片段?

片段活动:

public class MyActivity6 extends FragmentActivity {
TextView mTextview;
ViewPager viewPager = null;



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_activity6);
    viewPager = (ViewPager) findViewById(R.id.pager);
    FragmentManager fragmentManager = getSupportFragmentManager();
    viewPager.setAdapter(new MyAdapter(fragmentManager));
    mTextview = (TextView)findViewById(R.id.textView8);

    mTextview.setText(getIntent().getStringExtra("mytext"));
}



class MyAdapter extends FragmentStatePagerAdapter {

    public MyAdapter(FragmentManager fm) {
        super(fm);
    }


    @Override
    public Fragment getItem(int i) {
        Fragment fragment = null;


        if (i == 0) {
            fragment = new FragmentA();
        }
        if (i == 1) {
            fragment = new FragmentB();
        }
        if (i == 2) {
            fragment = new FragmentC();
        }
        if (i == 3) {
            fragment = new FragmentD();
        }
        return fragment;
    }

    @Override
    public int getCount() {

        return 4;
    }

    public CharSequence getPageTitle(int position) {
        String title = new String();
        if (position == 0) {
            return "Flipkart";
        }
        if (position == 1) {
            return "Amazon";
        }
        if (position == 2) {
            return "Snapdeal";
        }
        if (position == 3) {
            return "Ebay";
        }
        return null;
    }


}

片段:

`

public class FragmentA extends Fragment {
TextView mText;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View mainView = (View)
            inflater.inflate(R.layout.fragment1, container, false);
    WebView webView = (WebView)
            mainView.findViewById(R.id.webView12);
    WebSettings webSettings = webView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.getAllowContentAccess();
    webSettings.getDatabaseEnabled();
    webSettings.getAllowFileAccess();
    webSettings.getCacheMode();
    webView.loadUrl("http://m.flipkart.com/search?q=");
    webView.setWebViewClient(new WebViewClient());
    // Set up the ViewPager with the sections adapter.
    webView.setWebViewClient(new MyWebViewClient());




    return mainView;}


}

与其使用 Fragment 的默认构造函数,不如遵循这种使用静态 newInstance() 方法传递参数的常见模式。将它们存储到参数包中,然后在其 onCreateView() 期间(或您实际需要的任何地方)将它们拉出到 Fragment 中。

public class MyFragment extends Fragment {
    ...
    private static final String ARG_TEXT = "_arg_text";
    ...
    public static MyFragment newInstance(String myText) {
        Bundle args = new Bundle();
        args.putString(ARG_TEXT, myText);
        MyFragment ret = new MyFragment();
        ret.setArguments(args);
        return;
    }

    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View mainView = (View)
            inflater.inflate(R.layout.fragment1, container, false);
        Bundle args = getArguments();
        String text = args.getString(ARG_TEXT);

        //  Now use the text however you'd lik
        ...
    }
}