繁体   English   中英

在TextView上设置文本的一部分

[英]Set part of text on TextView

我创建了一个应用程序,可以从网站上的xml文件读取RSS Feed并使用cardview在卡片中显示它,它可以正常工作,但是卡片包含所有描述,我只想显示描述的前两行,所以我修改了代码但它不起作用,并说:

StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=20

这是我的代码的一部分:

@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
    YoYo.with(Techniques.FadeIn).playOn(holder.cardView);
    start= holder.Description.getText().toString().substring(0,20);
    FeedItem current=feedItems.get(position);
    holder.Title.setText(current.getTitle());
    holder.Description.setText(start);
    holder.Date.setText(current.getPubDate());
    Picasso.with(context).load(current.getThumbnailUrl()).into(holder.Thumbnail);

}

代替

start= holder.Description.getText().toString().substring(0,20);

做这个:

start = holder.Description.getText().toString();
if (start.length() > 20) {
    start = start.substring(0,20);
}

如果holder.Description.getText().toString()少于21个字符长,则不需要子字符串

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM