无法在 ClipboardManager primaryClip 重新分配 Val
Posted
技术标签:
【中文标题】无法在 ClipboardManager primaryClip 重新分配 Val【英文标题】:Val can not be reassigned at ClipboardManager primaryClip 【发布时间】:2020-08-05 03:43:46 【问题描述】:我知道这个question is already been asked,但它仍然不能帮助我解决问题
我在将数据复制到剪贴板管理器时遇到问题
下面是代码
fun copyToClipboard(context: Context, text: CharSequence)
var clipboard: ClipboardManager = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
var clip: ClipData = ClipData.newPlainText("label",text)
clipboard.primaryClip = clip!!
正如@ianhanniballake 建议的那样,我已经将 setPrimaryClip() 与非空 ClipData 一起使用
如下图
var clip: ClipData = ClipData.newPlainText("label",text)
clipboard.primaryClip = clip!!
但不知道为什么,我仍然遇到类似的错误
Val cannot be reassigned
【问题讨论】:
在你的“喜欢下面”中你没有使用setPrimaryClip()
。请修正你的例子。
也不要使用!!
,它会抛出NPE。如果你喜欢在脚上射击自己,你可以使用它;)
【参考方案1】:
你必须使用方法setPrimaryClip()
,例如:
clipboard?.setPrimaryClip(clip)
因为字段 primaryClip
只有 getter。
【讨论】:
当我强制我的应用程序的最低 SDK 为 29 时更新了 API。这帮助我解决了问题。以上是关于无法在 ClipboardManager primaryClip 重新分配 Val的主要内容,如果未能解决你的问题,请参考以下文章
ClipBoardManager.OnPrimaryClipChangedListener 不工作
为啥 Xamarin ClipboardManager 不包含仅纯文本的 html?
ClipboardManager 抛出以下错误:Can't create handler inside thread that has not called Looper.prepare() usin
使用ClipboardManager碰到Can't create handler inside thread that has not called Looper.prepare()(