android开发 RecyclerView 中使用 textview跑马灯滚动效果
看似很简单的textview滚动功能在RecyclerView item中出现了停止滑动的问题
下面贴出功能必备代码 在textview中设置
android:singleLine="true"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
RecyclerView onBindViewHolder中
title.setSelected(true);
网上也是有很多贴纸,都是这么写的 几番尝试后还是有列表第一个item 中 textview 会停止滚动 出现 点点点结尾
也尝试过自定义滚动textview 但始终觉得原生textview滚动更流畅些 经过多次尝试 终于找到解决方案
@Override
public void onViewAttachedToWindow(@NonNull RecyclerView.ViewHolder holder) {
super.onViewAttachedToWindow(holder);
NormalHolder normalHolder = (NormalHolder) holder;
if(holder.getAdapterPosition() == 0){
if(isClose){
refresh = true;
isClose = false;
normalHolder.tv_racelist_title.setFocusable(true);
normalHolder.tv_racelist_title.setFocusableInTouchMode(true);
normalHolder.tv_racelist_title.setSelected(true);
normalHolder.tv_racelist_title.requestFocusFromTouch();
}
}
}
textview 滚动的条件 得到焦点才行