我有RecyclerView
哪個項目包含ImageView1
,TextView1
,TextView2
,ImageView2
。我希望當應用程序運行時,textView2
無限制地有一個動畫slideInLeft,對於recyclerView
的每個項目,當您向下滾動並返回到某個項目時,動畫將重新開始。如何動畫只有一個字段的回收站查看項目
我TextView
在XML中看起來是這樣的:
<?xml version="1.0" encoding="utf-8"?>
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:textColor="@color/slideingText"
android:textSize="18sp"
android:layout_weight="2"
android:layout_marginRight="3dp"
android:text="this is some other text if you need this to be done you have to do it yourself"
android:layout_gravity="center"
android:singleLine="true"
android:focusable="true"
android:textStyle="bold"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
android:ellipsize="marquee"
android:gravity="center"
android:scrollHorizontally="true"
android:id="@+id/currentShowTitle"/>
在我RecyclerVew適配器我做了這樣的事情:
setAnimation(holder.currentShowTitle,position);
其中
private void setAnimation(View viewToAnimate, int position)
{
if (position > lastPosition)
{
Animation animation = AnimationUtils.loadAnimation(context, android.R.anim.slide_in_left);
viewToAnimate.startAnimation(animation);
lastPosition = position;
}
}
我也用
@Override
public void onViewDetachedFromWindow(ChannelsViewHolder holder) {
super.onViewDetachedFromWindow(holder);
((ChannelsViewHolder)holder).clearAnimation();
}
問題是,當應用程序運行時,它動畫,因爲我只想要第一個項目,當我向下滾動並回來時,動畫不會再次開始。 有誰知道如何做到這一點?