Android textView 显示: STRING_TOO_LARGE

在Android中,字符串资源的长度限制是32KB,getString()方法返回的字符串资源的大小超过这个限制,就会抛出STRING_TOO_LARGE 这个错误。

我本地的临界值是:32.3 KB (33,090 字节)

小于等于33090时,能正常显示;大于33090时,显示:STRING_TOO_LARGE。

<string content=" ...."/>

问题点是:getResource().getString(R.string.content) 得到的是:STRING_TOO_LARGE。

如果你需要显示更大的字符串,你可以尝试以下几种解决方案:

1、分割字符串:你可以尝试将大字符串分割成几个小字符串,然后分别在TextView中显示。这可以通过在字符串的特定位置使用分隔符来实现。
例如:

String largeText = "This is a very large string...";  
String[] smallerTexts = largeText.split("...");  
for (String text : smallerTexts) {  TextView textView = new TextView(this);  textView.setText(text);  
}

2、使用WebView:

如果你需要显示非常大的文本,可能需要考虑使用WebView而不是TextView。WebView没有字符限制,但它的性能开销可能会稍大一些。

3、使用Assets:
在这里插入图片描述

private String getTextFromAssets() {try {AssetManager assetManager = this.getResources().getAssets();InputStream inputStream = assetManager.open("disclaimer_content.txt");byte[] data = new byte[inputStream.available()];inputStream.read(data);String largeText = new String(data, "UTF-8");return largeText.replace("\\n", "\n");} catch (IOException e) {e.printStackTrace();return "";}}public  String getStringFromAssets() {String str = "";try {InputStreamReader inputStreamReader = new InputStreamReader(this.getResources().getAssets().open("disclaimer_content.txt"), "UTF-8");BufferedReader bufferedReader = new BufferedReader(inputStreamReader);String line;StringBuilder stringBuilder = new StringBuilder();while ((line = bufferedReader.readLine()) != null) {stringBuilder.append(line);}bufferedReader.close();inputStreamReader.close();str = stringBuilder.toString().replace("\\n", "\n");} catch (Exception e) {e.printStackTrace();}return str;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/188081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于OpenSSL和nginx搭建本地https服务器(详细实操版)

(꒪ꇴ꒪ )&#xff0c;Hello我是祐言QAQ我的博客主页&#xff1a;C/C语言&#xff0c;数据结构&#xff0c;Linux基础&#xff0c;ARM开发板&#xff0c;网络编程等领域UP&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff0c;让我们成为一个强大的攻城狮&#xff0…

腾讯云最新优惠券领取入口,总面值2000元代金券,新用户、老用户、企业用户均可领取!

腾讯云推出年末感恩回馈活动&#xff0c;新老用户可免费领取总面值2000元的代金券礼包&#xff0c;适用于多种预付费产品&#xff0c;最高可抵扣36个月订单&#xff0c;领取后30天内有效。 领取入口&#xff1a; https://curl.qcloud.com/UpmL4ho3 领取说明&#xff1a; 腾…

git push 报错 error: src refspec master does not match any 解决

git报错 ➜ *** git:(main) git push -u origin "master" error: src refspec master does not match any error: failed to push some refs to https://gitee.com/***/***.git最新版的仓库初始化后 git 主分支变成了 main 方法 1.把 git 默认分支名改回 master …

VSCode搭建STM32开发环境

1、下载安装文件 链接&#xff1a;https://pan.baidu.com/s/1WnpDTgYBobiZaXh80pn5FQ 2、安装VSCodeUserSetup-x64-1.78.2.exe软件 3、 在VSCode中安装必要的插件 3、配置Keil Assistant插件 4、在环境变量中部署mingw64编译环境

Git的介绍和下载安装

Git的介绍和下载安装 概述 Git是一个分布式版本控制工具, 通常用来管理项目中的源代码文件(Java类、xml文件、html页面等)进行管理,在软件开发过程中被广泛使用 Git可以记录文件修改的历史记录并形成备份从而实现代码回溯, 版本切换, 多人协作, 远程备份的功能Git具有廉价的…

USB Type-C的基本原理

1 USB Type-C的基本原理 1.1 基本特性 Figure 1-1 USB Type-C接头外形 USB Type-C&#xff08;简称USB-C&#xff09;的基本特性&#xff1a; 1. 接口插座的尺寸与原来的Micro-USB规格一样小&#xff0c;约为8.3mm X 2.5mm 2. 可承受1万次反复插拔 3. 支持正反均可插入的“正反…

知虾平台丨优化Shopee店铺运营,提升销售利润——了解知虾平台

在如今竞争激烈的电商市场中&#xff0c;Shopee作为一家快速发展的平台&#xff0c;吸引了众多卖家加入。然而&#xff0c;要在Shopee上取得成功并实现可观的销售利润&#xff0c;并不是一件容易的事情。为了帮助卖家更好地了解市场趋势、优化商品关键词、监控竞争对手等&#…

上海毅速:深挖模具领域 成为行业变革者

近年来&#xff0c;3D打印在模具行业取得了大量的应用和拓展&#xff0c;越来越多的产品开始选择3D打印或者使用3D打印模具来进行制造。经过不断的发展&#xff0c;上海毅速副总王利军发现3D打印需要好的材料、好的工艺&#xff0c;同时也离不开好的装备平台。 在接受南极熊采访…

[1] AR Tag 在ros中的使用

1.定义 AR Tag 是一种用于增强现实&#xff08;AR&#xff09;应用中的视觉标记&#xff0c;用于跟踪和定位虚拟物体在现实世界中的位置。 AR Tag由黑白正方形图像表示&#xff0c;图像内部有黑色边框中的某些图案。它与我们经常用到的二维码长得类似&#xff0c;原理其实也一…

Git常用命令#更改用户名

1.查看当前用户信息 git config user.name2.更改用户名 特定仓库中更改用户名 如果你只想在特定仓库中更改用户名&#xff0c;可以在不使用 --global 参数的情况下执行相同的命令&#xff0c;并进入特定仓库的目录进行修改。 cd /path/to/your/repository git config user.na…

react实现加载动画

1.Spinning.tsx import "./Spinning.scss";interface Props {isLoading: boolean;children?: React.ReactNode; }const Spinning: React.FC<Props> ({isLoading true,children }) > {return <div className{spinning-wrapper${isLoading ? " l…

计算机新建盘符和重新分配盘符的大小

一、新建盘符 有些电脑刚买来时候&#xff0c;只有一个C盘分区&#xff0c;此时最好增加几个分区方便使用。 注意&#xff1a;分区操作要慎重&#xff0c;不要轻易去试。这里只针对购买的电脑厂家未做分区&#xff0c;只有一个C盘的情况。 如果自己电脑的分区本身已经满足你…

2023.11.12 阿里云产品全线故障

阿里云 11.12 故障原因曝光&#xff1a;访问密钥服务 (Access Key) 异常 (baidu.com) 故障原因竟然是因为生成白名单代码逻辑缺陷。

2024年天津天狮学院专升本专业课报名缴费流程

天津天狮学院高职升本缴费流程 一、登录缴费系统 二、填写个人信息&#xff0c;进行缴费 1.在姓名处填写“姓名”&#xff0c;学号处填写“身份证号”&#xff0c;如下图所示&#xff1a; 此处填写身份证号 2.单击查询按钮&#xff0c;显示报考专业及缴费列表&#xff0c;…

KaiwuDB 通过中国信通院“可信数据库”性能与稳定性评测

11月29日&#xff0c;中国信通院 2023 年下半年“可信数据库”评估评测结果正式发布&#xff0c;由 KaiwuDB研发的开务数据库系统 KaiwuDB V2.0 达到信通院时序数据库性能、稳定性测试标准。 至此&#xff0c;KaiwuDB已完成时序数据库基础能力、性能、稳定性全项评测&#xff…

HTAP 还可以这么玩?丨TiDB 在 IoT 智慧园区的应用

作者&#xff1a;某物联网公司设施云平台负责人 用户简介&#xff1a;我们是一家提供全链智慧园区整体解决方案的物联网公司&#xff0c;致力于打造可持续发展的智慧园区。 基础设施平台简介 基础设施平台是集团一线作业人员日常工作中高度依赖的重要系统&#xff0c;涵盖了各…

溜冰场电脑收银系统软件会员管理操作教程,佳易王溜冰场会员卡管理软件下载

溜冰场电脑收银系统软件会员管理操作教程&#xff0c;佳易王溜冰场会员卡管理软件下载 一、软件 部分功能简介&#xff1a; 1、会员信息登记 &#xff1a;可以直接使用手机号登记&#xff0c;也可以使用实体卡片&#xff0c;推荐用手机号即可。 2、会员卡类型 &#xff1a;可…

Python开发运维:PyMongo 连接操作 MongoDB

目录 一、理论 1.PyMongo模块 2.Mongo Shell 二、实验 1. Windows11安装MongoDB 7.0.4 2.Windows11安装MongoDB Shell 2.1.0 3.PyMongo 连接 MongoDB&#xff08;无密码方式&#xff09; 4.PyMongo 连接 MongoDB&#xff08;有密码方式&#xff09; 5.PyMongo 操作 Mo…

传教士与野人过河问题

代码模块参考文章&#xff1a;传教士与野人过河问题&#xff08;numpy、pandas&#xff09;_python过河问题_醉蕤的博客-CSDN博客 问题描述 一般的传教士和野人问题&#xff08;Missionaries and Cannibals&#xff09;&#xff1a;有N个传教士和C个野人来到河边准 备渡河。…

【分布式事务】Seata 开源的分布式事务解决方案

1. 什么是seata Seata 是一款开源的分布式事务解决方案&#xff0c;致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式&#xff0c;为用户打造一站式的分布式解决方案。 2. seata发展历程 阿里巴巴作为国内最早一批进行应用分…