如何将数据从活动传递到Android中没有片段的片段?

问题描述 投票:0回答:1

这是我项目的活动类别

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_tabs_activity);

    String LicID = "DATA"
    Fragment FragmentDetail = new FragmentDetail();
    Bundle data  = new Bundle();
    data.putString("data",LicID);

    FragmentDetail.setArguments(data);

    ViewPageAdapter adapter = new ViewPageAdapter(getSupportFragmentManager());
    adapter.AddFragment(new FragmentDetail(),"Detail");


    viewp.setAdapter(adapter);
    tablay.setupWithViewPager(viewp);
}

}

这是我的fragmentDetail活动。这是一个选项卡片段...

public class FragmentDetail extends Fragment {

public FragmentDetail() {
}

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    view = inflater.inflate(R.layout.detail_fragment,container,false);

    return view;
}

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);


    String LicID = getArguments().getString ("data");
    Toast.makeText(getContext(),""+LicID+" ",Toast.LENGTH_SHORT).show();

}此代码无法正常工作。应用程序崩溃没有任何错误....请帮助。谢谢

android parsing fragment
1个回答
0
投票

在tab_activity中:

 public String LicID = "DATA"

[当您想从附加到活动的片段中访问此变量时,

详细片段:

((tab_activity) (getActivity)).LicID

因此,您不必将参数传递给片段,也不必为此使用包。如果您需要进一步的帮助,请显示您的日志


0
投票

我认为问题是您将参数设置为一个片段:

Fragment FragmentDetail = new FragmentDetail();
Bundle data  = new Bundle();
data.putString("data",LicID);

FragmentDetail.setArguments(data);

并向适配器添加另一个片段:

adapter.AddFragment(new FragmentDetail(),"Detail");

请尝试使用相同的片段。

© www.soinside.com 2019 - 2024. All rights reserved.