gpt4 book ai didi

java - 如何将数据从 Activity 传递到 Fragment?

转载 作者:行者123 更新时间:2023-12-02 02:49:28 24 4
gpt4 key购买 nike

关于将数据 Activity 传递给 Fragment 有很多问题。

但是我对“替换”方法有疑问。由于滑动 tablayout,我使用 fragment 。

我想从Character1_activity.java -> TabFragment1.java传递数据

这是代码。

Character1_Activity.java

public class Character1_Activity extends Activity implements View.OnClickListener {
public String food_box;
public String water_box;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams();
layoutParams.flags = WindowManager.LayoutParams.FLAG_DIM_BEHIND;
layoutParams.dimAmount = 0.7f; // 흐린 정도
getWindow().setAttributes(layoutParams);
setContentView(R.layout.character1);
}

public void onClick(View v) {
switch (v.getId()) {
case R.id.closebutton1:
Intent intent = new Intent(this, Next_day.class);
CheckBox food = (CheckBox) findViewById(R.id.food_cb);
CheckBox water = (CheckBox) findViewById(R.id.water_cb);

if (food.isChecked() == true)
food_box = "true";
else
food_box = "false";

if (water.isChecked() == true)
water_box = "true";
else
water_box = "false";

TabFragment1 fragment = new TabFragment1();
if (fragment != null) {
FragmentManager fragmentManager = getFragmentManager();
Bundle bundle = new Bundle();
bundle.putString("food_box", food_box);
fragment.setArguments(bundle);
fragmentManager.beginTransaction().replace(R.id.game_main, fragment).addToBackStack(null).commit();
}
this.finish();
break;

这是 TabFragment1

public class TabFragment1 extends Fragment {
String ch1_water;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.tab_fragment_1, container, false);
getArguments().getString("water_box");
}

最佳答案

来自 Activity :-

Bundle bundle = new Bundle();
bundle.putString("food_box", foodbox);
fragment.setArguments(bundle);

Fragment onCreateView方法:

    String strtext = getArguments().getString("food_box");    

关于java - 如何将数据从 Activity 传递到 Fragment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44067358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com