Comments (13)
java.lang.StringIndexOutOfBoundsException: length=96; regionStart=14; regionLength=-3
at java.lang.String.startEndAndLength(String.java:298)
at java.lang.String.substring(String.java:1087)
at java.lang.String.subSequence(String.java:1424)
at ExpandableTextView.getNewTextByConfig(ExpandableTextView.java:266)
at setText(ExpandableTextView.java:356)
at android.widget.TextView.setText(TextView.java:4189)
from expandabletextview.
我没有改代码,只是拿来测试时发现的。
是这两行代码
int remainWidth = getValidLayout().getWidth() -
(int) (mTextPaint.measureText(mOrigText.subSequence(indexStart, indexEndTrimmed).toString()) + 0.5);
float widthTailReplaced = mTextPaint.measureText(getContentOfString(mEllipsisHint)
+ (mShowToExpandHint ? (getContentOfString(mToExpandHint) + getContentOfString(mGapToExpandHint)) : ""));
from expandabletextview.
感谢反馈,我尽快看一下这个问题
from expandabletextview.
我试了下,添加\n后,我这边没有产生问题;
另外,我在编码时没有考虑到\n的情况,因此对\n支持的不好,比如存在换行符后对一共多少行判断有误。在listview中使用此控件时,在初始化时会显示“先打开然后立即收起”的现象,这两个问题有待进一步解决。
另外,您给的log中显示266行报错,但是266行是空行,因此应该是您在修改源码后进行调试的log,所以我这边无法复现此问题
from expandabletextview.
就是碰到有
aaa
bbb
ccc
这种内容时候会报错
from expandabletextview.
谢谢提醒,确实有这个问题,主要是因为我没有处理\n导致的,我稍后改改
from expandabletextview.
我想在项目中使用,但还有一个问题,能在加一个ClickableSpan 把点击显示文字和"展开"/"收起"这两个的点击事件区分开吗?
from expandabletextview.
没太明白你的意思,你的意思是“展开”/“收起”只是一个显示作用,不添加按下功能,按下功能在另一个clickspan中添加?
from expandabletextview.
我的意思是“展开”/“收起”就按现在做的,但点击显示的文字可以加一个ClickableSpan,这样就可以自己来设点击事件了。就是点击显示文字和"展开"/"收起"可以有不同的响应
from expandabletextview.
我明白你的意思了,现在的clickablespan的click是这样定义的:
@Override
public void onClick(View widget) {
if(hasOnClickListeners()
&& (getOnClickListener(ExpandableTextView.this) instanceof ExpandableClickListener)) {
}else{
toggle();
}
}
现在的问题是,如果我给这个view设置了外部的点击事件,此时单独点击“展开收起”时,既响应clickablespan,同时响应外部点击效果
from expandabletextview.
对的
from expandabletextview.
这个在android 4.4 上是能够复现的
from expandabletextview.
更新了一下代码,现在换行崩溃的问题已经可以解决了
请更细一下依赖:
compile 'cn.carbs.android:ExpandableTextView:1.0.3'
from expandabletextview.
Related Issues (20)
- ExpandableTextView字体小了一些
- DynamicLayout是不是多余了
- 如果setText的时候传入的是SpannableString会使其原来的效果和点击事件失效 HOT 1
- 单独设置“Read More”的字体大小和style(Bold...)
- 可以把 展开收起改成图片么 HOT 1
- 在recyclerview中使用会有复用问题呀,有多个展开,收起,来回滑动就乱了
- 怎么自定义行末的文字还有颜色啊
- 感谢您 HOT 2
- 有\n的时候,计算行数不准确,有什么办法解决吗? HOT 2
- 能不能将属性都可以用代码设置 这样更灵活 因为现在我有一个布局是公用的 在recycleview中的adapter使用 在activity里也用
- etv_EllipsisHint设置无效
- recyclerview中划出界面不能正常显示 HOT 1
- 文字内容为英文时,展开收起的位置有问题.
- 段落右侧出现空白,同时“展开”没有在同一行 HOT 3
- 很奇怪,默认是展开的,要点击一下才显示,展开折叠按钮 HOT 5
- 文字设置两种颜色(使用SpanString)
- setVisibility(VISIBLE)时会展开全部,并且不显示收起的文字 HOT 1
- click事件的时候不能区分正文还是伸缩部分
- 指定初始状态是折叠,在recyclerview中有的item却显示为展开状态
- 当文本内容是纯数字时,最大3行,但展开文字跑到第4行了
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from expandabletextview.