Wie die Rückkehr zu Vorherigen Fragments, indem Sie auf zurück(Nicht die Hardware-zurück-Taste)?

Habe ich nur 1 übung mit 2-Fragmente, die innerhalb es. Wenn Sie die Aktion starten, Ein Fragment zu starten. Wenn der Benutzer die Taste in sth und klicken Sie auf die Schaltfläche wird direkt an Fragment B. Also, was ich tun möchte, ist, dass durch hinzufügen eines "Zurück-Pfeil" sth wie diese <- an der oberen linken Ecke.

Tut, es hat zu tun mit FragmentManager.popBackStack()? Bitte um Rat ! Thx

MainActivity.java

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    FragmentManager manager=getSupportFragmentManager();
    FragmentTransaction transaction=manager.beginTransaction();
    first first=new first();
    transaction.add(R.id.top,first);
    transaction.commit();
}
}

first.java

public class first extends Fragment implements View.OnClickListener{

Button get_button;
EditText get_input_name;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    View rootView = inflater.inflate(R.layout.fragment_first,container,false);
    get_input_name=(EditText)rootView.findViewById(R.id.input_name);
    get_button=(Button)rootView.findViewById(R.id.submit);
    get_button.setOnClickListener(this);
    return rootView;
}

public void onClick(View v){

    FragmentManager manager=getFragmentManager();
    FragmentTransaction transaction=manager.beginTransaction();
    two Two=new two();
    Bundle bundle = new Bundle();
    bundle.putString("input_name_value",get_input_name.getText().toString());
    Two.setArguments(bundle);
    transaction.replace(R.id.top,Two);
    transaction.commit();

}
}

two.java

public class two extends Fragment implements View.OnClickListener {
TextView get_display_input;
ImageView get_back_button;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    //Inflate the layout for this fragment
    return inflater.inflate(R.layout.fragment_two, container, false);
}

public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    get_display_input=(TextView)getActivity().findViewById(R.id.display_input);
    get_back_button=(ImageView) getActivity().findViewById(R.id.back_button);
    Bundle bundle = getArguments();
    String get_name = bundle.getString("input_name_value");
    //int store_get_input=Integer.parseInt(get_name);
    get_display_input.setText("You have entered "+get_name);
}

public void onClick(View v){

    // WHAT TO DO HERE IN ORDER TO RETURN TO PREVIOUS Fragment when clicking the button?

}
}

Wie die Rückkehr zu Vorherigen Fragments, indem Sie auf zurück(Nicht die Hardware-zurück-Taste)?

Um genauer zu sein, entnehmen Sie bitte der Abbildung.

InformationsquelleAutor gosulove | 2016-07-18
Schreibe einen Kommentar