contentResolver是未解决的引用: contentResolver如何纠正这个问题?
class fragment_edcards_media_animimage : Fragment() {
// TODO: Rename and change types of parameters
private var param1: String? = null
private var param2: String? = null
lateinit var u : FragmentEdcardsMediaAnimimageBinding
// Animated Image
private val getContentCardAnimImage = registerForActivityResult(ActivityResultContracts.GetContent()) { uri: Uri ->
val contentResolver = contentResolver
val source = ImageDecoder.createSource( contentResolver, uri )
val drawable = ImageDecoder.decodeDrawable(source)
Log.d("EditCards",uri.toString())
//u.iViewAnimImage.setImageDrawable(drawable)
if (drawable is AnimatedImageDrawable){
drawable.start()
//drawable.repeatCount = 2
}
val file = File( uri?.path )
mydecklist[cCardPosition].c_animimageuri = mytools.getImageFromMediaStore(u.iViewAnimImage.context,file.name)
}尝试#1 activity.contentResovlver导致;只有安全(?)或非空断言(!!)FragmentActivity类型的可空接收器是否允许调用?
尝试#2 val contentResolver = activity?.contentResolver
val = ImageDecoder.createSource( ImageDecoder.createSource uri )类型错配:推断类型是ContentResolver?但ContentResolver是预料中的
我已经用粗体显示了它认为错误在行ImageDecoder中的地方。
尝试#3 val contentResolver = getActivity().contentResolver()表达式'contentResolver‘,类型为'ContentResolver!’不能作为函数调用。找不到函数'invoke()‘
和
只有安全(?)或非空断言(!!)FragmentActivity类型的可空接收器是否允许调用?
发布于 2021-08-09 23:19:15
这似乎就是答案;val contentResolver = requireActivity().contentResolver
谢谢CommonsWave
https://stackoverflow.com/questions/68711967
复制相似问题