【问题标题】:Passing data from activity to fragment in android is not working在android中将数据从活动传递到片段不起作用
【发布时间】:2020-03-06 12:38:44
【问题描述】:

我想将参数从活动传递到片段。 这是来自活动的代码:

public class MatchActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_match);
        Bundle bundle = new Bundle();
        bundle.putString("edttext", "From Activity");
        MarqueFragment fragobj = new MarqueFragment();
        fragobj.setArguments(bundle);

    }

}

这是片段中的代码:

public class MarqueFragment extends Fragment {

    @Override
    public void onCreate ( Bundle savedInstanceState ) {
        super.onCreate(savedInstanceState);
    }
    @Override
    public View onCreateView ( LayoutInflater inflater, ViewGroup container,   Bundle savedInstanceState ) {
        View convertView=inflater.inflate(R.layout.fragment_marque, container, false);


            if (getArguments() != null) {
                String mParam1 = getArguments().getString("edttext");
                System.out.println("got this from MatchActivity "+mParam1);
            }else{
                System.out.println("got nothing");
            }     
}

我没有得到任何我不知道为什么的论点。 注意:我没有收到错误,我得到“一无所获”作为输出。

【问题讨论】:

  • 输出是“一无所获”还是一些错误?
  • 输出是“一无所有”而不是错误
  • 你用的是什么安卓版本?
  • 平均 getArguments() 为空。
  • 您只显示片段代码,而不是如何添加它。你能显示完整的代码吗? (使用 FragmentTransaction)

标签: android android-studio android-fragments fragment


【解决方案1】:

把你的代码改成这个

Bundle bundle = new Bundle();
bundle.putString(edttext", "From Activity");
MarqueFragment fragobj = new MarqueFragment();
fragobj.setArguments(bundle);
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_marque, fragobj);
transaction.commit();

【讨论】:

  • 即使我在 onCreate 中移动代码后仍然没有传递参数
  • fraginfo 是未知变量!!
  • transaction.replace(R.id.fragment_marque, fragobj);这里的第二个参数错误
  • 错误的第二个参数期望 android.app.fragment
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多