【发布时间】:2021-04-22 16:48:31
【问题描述】:
在androidTextView中,当显示json字符串时,希望被正确格式化并且它应该有一些指定的字段粗体,例如:
{ “地点”: { "国家":"GB", “天气”:[ { "zip":20202, “描述”:“太阳”, “温度”:“80” } ] } },
显示为
试过@Zain 的解决方案,似乎不起作用(见下面的截图)。它在对话框的 TextView 中设置。没有缩进。
更新:它是对话框中的TextView:
private fun showFormatedJsonString(context: Context, jsonStr: String) {
val dialog = Dialog(context)
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE)
dialog.setContentView(R.layout.module_path)
dialog.setCanceledOnTouchOutside(true)
dialog.setCancelable(true)
dialog.findViewById<TextView>(R.id.json_str).apply {
text = jsonStr
}
dialog.findViewById<View>(R.id.root_container).setOnClickListener {
dialog.dismiss()
}
val displayMetrics: DisplayMetrics = context.getResources().getDisplayMetrics()
val dialogWidth = (displayMetrics.widthPixels * 0.85).toInt()
val dialogHeight = (displayMetrics.heightPixels * 0.85).toInt()
dialog.getWindow().setLayout(dialogWidth, dialogHeight)
dialog.show()
}
用SpannableStringBuilder试过,也不起作用
//spStrBuilder.color ( Color.CYAN) { append("to be colored") }
spStrBuilder.bold { append("to be bold") }
【问题讨论】:
标签: android json kotlin textview