我正在尝试从文件管理器获取文件的文件路径,并在文本视图中显示该文件路径。我能够打开文件管理器,但是当我设置文本时,我得到了java.lang.IllegalStateException: textview must not be null
这是从对话框打开文件管理器的代码
private fun openCSVUploadDialog(){
val uploadCsv = Dialog(requireActivity(), R.style.FullScreenDialogStyle)
uploadCsv.requestWindowFeature(Window.FEATURE_NO_TITLE)
uploadCsv.setContentView(R.layout.csv_upload_dialog)
uploadCsv.window!!.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
uploadCsv.show()
uploadCsv.tvUpload.setOnClickListener {
val intent = Intent(Intent.ACTION_GET_CONTENT)
.setType("*/*")
startActivityForResult(intent,UPLOAD_FILE_CODE)
}
uploadCsv.btnUpload.setOnClickListener {
uploadCsv.dismiss()
}
}
我在哪里是设置文本的文件路径
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
when(requestCode){
UPLOAD_FILE_CODE -> {
if (resultCode == RESULT_OK){
val path = data!!.data!!.path
csvFilePath.text = path
}
}
}
}
csvFilePath是我的文本视图
答案 0 :(得分:0)
此代码写在哪里?片段或活动或某些实用程序类?
如果是片段, 在onCreateView中使用findViewById初始化csvFilePath
如果活动, 在OnCreate中做同样的事情
如果还有其他类,请将结果发布到活动并更新UI