gpt4 book ai didi

java - 使用导航组件传递数据 - 为什么我需要构造函数的值,而指南不需要?

转载 作者:行者123 更新时间:2023-12-01 17:31:03 26 4
gpt4 key购买 nike

我正在使用this android guide用于在导航目的地之间传递数据。

您可以在下面的代码 fragment 中看到,指南不需要将任何值传递给构造函数,而是设置值而不是传递它们:

@Override
public void onClick(View view) {
EditText amountTv = (EditText) getView().findViewById(R.id.editTextAmount);
int amount = Integer.parseInt(amountTv.getText().toString());
ConfirmationAction action =
SpecifyAmountFragmentDirections.confirmationAction()
action.setAmount(amount)
Navigation.findNavController(view).navigate(action);
}

但是,当我尝试遵循这一点时,就像指南所指示的那样,它坚持要求我放置我只想设置的传递元素:

enter image description here

以下是 nav_graph.xml 中的相关部分:

目的地:

enter image description here

行动:

enter image description here

我问,因为即使只将它们作为参数传递,或者将它们作为参数传递并设置它们,程序也会声称它没有收到其中一个元素。

最佳答案

您可以使用导航架构组件使用它来传递数据(即Bundle)

EditText amountTv = (EditText) getView().findViewById(R.id.editTextAmount);
int amount = Integer.parseInt(amountTv.getText().toString());
Bundle bundle = new Bundle();
bundle.putInt("AMOUNT",amount);
findNavController().navigate(R.id.IdOfTheFragemntYouAreTryingToNavigate, bundle, null, null)

关于java - 使用导航组件传递数据 - 为什么我需要构造函数的值,而指南不需要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61119434/

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