在片段的私有函数中使用 adapterPosition

Posted

技术标签:

【中文标题】在片段的私有函数中使用 adapterPosition【英文标题】:Using adapterPosition within a private function in a fragment 【发布时间】:2021-10-05 20:54:48 【问题描述】:

我目前正在尝试访问

adapterPosition

然而,在私有函数中,我收到以下错误

unresolved reference: adapterPosition

它找不到要前往的声明。

当我在这个私有函数之外使用 adapterPosition 时,我没有这个错误。

  private fun speakCurrentValue() 


    val position = adapterPosition
    val currentItem = exampleList[position]
    lateinit var tts: TextToSpeech

    tts.speak(
        currentItem.percent.toString(),
        TextToSpeech.QUEUE_ADD,
        null,
        ""
    )

    handler.postDelayed(RunnablespeakCurrentValue(), delayMs)

关于如何解决此错误的任何想法?

【问题讨论】:

【参考方案1】:

adapterPosition 将是 Int。您可以将其作为参数传递给您的private function

 private fun speakCurrentValue(position: Int) 

    val currentItem = exampleList[position]
    lateinit var tts: TextToSpeech

    tts.speak(
        currentItem.percent.toString(),
        TextToSpeech.QUEUE_ADD,
        null,
        ""
    )

    handler.postDelayed(RunnablespeakCurrentValue(), delayMs)

【讨论】:

以上是关于在片段的私有函数中使用 adapterPosition的主要内容,如果未能解决你的问题,请参考以下文章

Android - 保留片段?

这些角度电子邮件指令代码片段如何连接

从 Viewpager2 片段访问父片段函数

C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段

由于 Fragment 类中没有公共构造函数方法,在 android 中旋转设备后出现异常

在ARM模板中为私有nuget feed添加身份验证