You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fragment间传递输入框值显示异常:值显示为资源标识求助

解决Fragment间传递输入框值显示为资源标识的问题

你遇到的问题核心是错误调用了EditText的toString()方法——这个方法返回的是控件对象本身的字符串描述(通常包含资源ID相关信息),而非用户输入的文本内容。

修正LoginFragment的代码

把获取输入值的逻辑改成读取EditText的text属性再转字符串:

binding.buttonLogin.setOnClickListener{
    val userName = binding.etUserName.text.toString()
    val password = binding.etPassword.text.toString()
    val action = LoginFragmentDirections.actionLoginFragmentToWelcomeFragment(userName, password)
    findNavController().navigate(action)
}

WelcomeFragment的接收代码无需修改

你当前的参数接收逻辑是正确的:

val args: WelcomeFragmentArgs by navArgs()
binding.tvUserName.text = args.userName
binding.tvPassword.text = args.password

修改后重新运行,就能正确传递并显示用户输入的账号和密码了。

内容的提问来源于stack exchange,提问作者WALFAZ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 04:25:30