Ich möchte meine EditText-Eingabe von meinem ersten Fragment in die Textansicht auf dem zweiten Fragment auf Knopfdruck übergeben. TextView zeigt jedoch einen "Null" -Wert an, wenn ein Tastenklick ausgelöst wird.Fragment zu Fragment EditText
Erster Teil:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.first_frag, container, false);
TextView tv = (TextView) v.findViewById(R.id.tvFragFirst);
tv.setText(getArguments().getString("msg"));
Button btn = (Button) v.findViewById(R.id.tryBtn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditText woo = (EditText)v.findViewById(R.id.editText);
MainActivity.myBundle.putString("Try", String.valueOf(woo));
switch (v.getId()) {
case R.id.tryBtn:
SecondFragment home = new SecondFragment();
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.first_frag, home);
ft.setTransition(FragmentTransaction.TRANSIT_ENTER_MASK);
ft.addToBackStack(null);
ft.commit();
break;
}
}
}
);
return v;
}
Zweiter Teil:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.second_frag, container, false);
TextView tv = (TextView) v.findViewById(R.id.tvFragSecond);
TextView tvTry = (TextView) v.findViewById(R.id.tvTry);
String myValue = (String) MainActivity.myBundle.get("Try");
return v;
}
MainActivity:
public static Bundle myBundle = new Bundle();
Vielen Dank. Das hat perfekt funktioniert. Wie wäre es, wenn ich beim Klick auf die Schaltfläche mehrere Werte hinzufügen würde? – randolfrojo11
einfach in das Bundle, die erstellt wurden: bundle.putString ("secondTry", woo2.getText(). ToString()); und dann aus dem Argument bekommen: String myValue2 = arguments.getString ("secondTry"); –