当前位置: 首页 > 知识库问答 >
问题:

如何显示Toast。使用kotlin在另一个页面textView中生成文本结果

禄光霁
2023-03-14

//这是我使用kotlin的扫描仪条形码

覆盖趣味接收检测(检测:检测器。检测){

            val barcodes = detections.detectedItems
            if (barcodes.size() == 1) {
                scannedValue = barcodes.valueAt(0).rawValue
                runOnUiThread {
                    cameraSource.stop()
                    Toast.makeText(this@InsertStockInActivity, "value- $scannedValue", Toast.LENGTH_SHORT).show()
                    finish()
                }
            }else
            {
                Toast.makeText(this@InsertStockInActivity, "value- else", Toast.LENGTH_SHORT).show()

            }
        }

//这是我的输入页面

覆盖CreateView上的乐趣(膨胀器:LayoutInflater,容器:ViewGroup?,保存的InstanceState:Bundle?):视图?{

    binding = FragmentInputStockInBinding.inflate(inflater, container, false)
    binding.btnScanBarcode.setOnClickListener{ nav.navigate(R.id.insertStockInActivity)}

    return binding.root
}[enter image description here][1]

共有2个答案

吴兴国
2023-03-14

您可以使用视图模型、实时数据或其他(静态)对象将结果保存在变量中。按照同样的思路,您可以在另一个类中创建一个show toast函数,只需传递所处片段或活动的上下文即可。例如,片段上下文可以是requireContext()。

 fun showToast(context: Context?, message: String) {
    Toast.makeText(context, message, Toast.LENGTH_SHORT).show()
}
云光明
2023-03-14

我认为您应该将toast文本提取为一个变量,并将其传递到另一个页面(我假设您的意思是传递到另一个片段/活动或另一个屏幕)


  private lateinit var toastText:String
  ...

  if (barcodes.size() == 1) {
    ...     
    toastText = scannedValue      
    ...
  } else {
    toastText = "value- else"
  }

  Toast.makeText(this@InsertStockInActivity, toastText , Toast.LENGTH_SHORT).show()

}

并通过Intentsecure-argstoastText传递到另一个页面,如果您使用的是Jetpack导航

 类似资料:
  • 你能解释一下如何在此代码中显示另一个文本视图吗?我使用的是viewpager,所以我只打印一个textview,我想再打印一个textview。任何人都可以帮我。提前谢谢。 这是我的代码 这是我的主要活动课 这是我的gridview类- 此代码表示单击网格视图项目时此页面将调用此页面是具有网格视图项目的viewpager此类是viewpager- 这是我的申请看看 这是我的Gridview外观,当

  • 我想知道每个阿拉伯语字母的唯一代码,以将阿拉伯语文本显示为文本视图。 当我给直作为一个字符串,但它不会显示像阿拉伯文本格式。它显示每一个字母分开。我尝试了谷歌的几个链接。但我没有得到我要找的东西。 实际上,我正在寻找每一个阿拉伯字母的唯一代码。这样我就可以用阿拉伯语文本格式显示我的句子了。

  • 大家早上好。我从标题中知道它是一切都混淆了,所以我会试着解释得更好。我需要为一个医疗项目创建一个计算糖化血红蛋白的应用程序。我有3个编辑文本,我在其中输入医学测试的值。三者中的每一个都因另一个而改变。举个例子:如果我一个有42,另一个是5.99%。诸如此类。我试图让它们动态地变化:在我写作的过程中保持不变。我尝试使用OnCliclListener,但是我必须写完整的值。 我不知道我解释得好不好让你

  • 我正在从服务器接收UDP数据,我想将UDP数据显示给。但每次都会发生NullPointerException。我不知道为什么。 下面是我的代码: 这个类是线程,用于继续接收UDP数据 我应该做什么来向TextView显示'str'? 这是StackTrace: java.lang.NullPoInterException:尝试在Android.Content.ContextWrapper.GetA

  • 问题内容: 我有简单的 HTML : 我想在中显示HTML样式的文本。这个怎么做? 问题答案: 您需要使用XML字符串中的HTML。仅在布局XML中引用带有HTML的字符串将不起作用。 这是您应该做的:

  • 我有两个变量。我需要显示这些变量的添加,并在textView中添加一些文本。 实例 瓦尔a瓦尔b 我需要的文本“添加是(a b)” 对不起,如果我做错了什么,我是新手。