Activity向fragment传数据
先上图
activity与fragment之间进行数据传递:在Activity中将要传递的数据封装在Bundle中,使用setArgument(Bundel bundel)方法传递数据,在要传递到的Fragment中 使用getArgment(),得到传递到的Bundle。
我这放了两个fragment,只需要看懂一个就行了。
具体代码如下:
MainActivity.java
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.FragmentTransaction;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText editText=findViewById(R.id.main_editText);
findViewById(R.id.btn1).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Bundle bundle=new Bundle();
bundle.putString("arg1",editText.getText().toString());
Fragment1 fragment1=new Fragment1();
fragment1.setArguments(bundle);
FragmentTransaction fragmentTransaction=getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frameLayout,fragment1);
fragmentTransaction.commit();
}
});
findViewById(R.id.btn2).setOnClickListener(new