2017-01-17 5 views
0

У меня проблема, я не знаю, как ее решить.Запустить фрагментную карту с адресом для поиска

У меня есть фрагмент с editText и button. button запускает карту фрагмента, как это:

public void onClick(View view) { 
     //Fragment fragment = null; 

     switch (view.getId()) { 
      case R.id.SearchButton: 

       Home activity = (Home) getActivity(); 
       if(activity != null)activity.openMapFragment(); 
       break; 
     } 

и функцию openMapFragment():

public void openMapFragment(){ 
     Fragment fragment = new gMapFragment(); 
     replaceFragment(fragment); 
    } 

Как бы я сделать, чтобы отправить текст, вставленный на editText поле адреса, чтобы искать на фрагменте карты ?

+2

надеюсь, что это поможет вам http://stackoverflow.com/a/12739968/ 3790150 – saeed

+0

Спасибо, это помогло. – Capie

ответ

1

Вы должны использовать пакет для передачи данных фрагмента:

public void openMapFragment(String args){ 
    Fragment fragment  = new gMapFragment(); 
    Bundle bundle   = new Bundle(); 
    bundle.putString("foo", args); 
    fragment.setArguments(bundle); 
    replaceFragment(fragment); 
} 

И для извлечения данных:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    //... 
    String foo = getArguments() != null ? getArguments().getString("foo") : ""; 
    //... 
} 
+0

, и как только я это сделаю, как бы восстановить параметры на фрагменте ('' foo "' в этом случае)? EDIT: Я уже видел, как. Благодарю. – Capie

+0

Любая идея, как исправить исключение NullPointerException? – Capie

+0

показать код и сообщение об ошибке – Yoleth