android view动画无效,Android Realm RecyclerView动画无效?

我有一个RecyclerView它被RealmRecyclerViewAdapter填充,但不知何故数据改变时没有动画播放。 适配器类使用多个ViewHolders用于不同的布局,但不应该影响动画的权利?Android Realm RecyclerView动画无效?

public class DiaryPageEntryAdapter extends RealmRecyclerViewAdapter {

static class MealEntryViewHolder extends RecyclerView.ViewHolder {

@BindView(R.id.item_diary_entry_drink_title) TextView tvMealEntryTitle;

@BindView(R.id.item_diary_entry_meal_time) TextView tvMealEntryTime;

BindView(R.id.item_diary_entry_meal_bullet_list) RecyclerView rvBulletList;

MealEntryBulletAdapter bulletAdapter;

public MealEntryViewHolder(View itemView) {

super(itemView);

ButterKnife.bind(this, itemView);

this.bulletAdapter = new MealEntryBulletAdapter();

rvBulletList.setLayoutManager(new LinearLayoutManager(itemView.getContext()));

rvBulletList.setAdapter(this.bulletAdapter);

}

void bindData(MealEntry mealEntry) {

tvMealEntryTitle.setText(mealEntry.getTitle());

tvMealEntryTime.setText(DateTimeUtils.timeValueToText(itemView.getContext(), mealEntry.getTime()));

this.bulletAdapter.updateData(mealEntry.getConsumedMeals() ,mealEntry.getConsumedDrinks());

}

}

// Other ViewHolders

public DiaryPageEntryAdapter(@Nullable OrderedRealmCollection data, boolean autoUpdate) {

super(data, autoUpdate, true);

}

@Override

public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

switch (viewType) {

case MEAL_ENTRY:

// Inflate meal entry layout and then create a new meal view holder with it

View rowMeal = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_diary_entry_meal, parent, false);

return new MealEntryViewHolder(rowMeal);

// Other case options.

}

@Override

public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {

Entry entry = getItem(position);

if(Entry.isMealEntry(entry)) {

MealEntryViewHolder mealHolder = (MealEntryViewHolder) holder;

mealHolder.bindData(Entry.getMealEntryFromEntry(entry));

}

// Other if branches.

}

@Override

public int getItemViewType(int position) {

Entry entry = getItem(position);

if(Entry.isMealEntry(entry)) return MEAL_ENTRY;

// Other if branches.

}

用于设置RecyclerView和适配器代码看起来如下:

RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.frag_diary_page_rv_entries);

recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));

entryAdapter = new DiaryPageEntryAdapter(null, true);

recyclerView.setAdapter(entryAdapter);

所述数据结合到适配器的代码如下所述:

RealmResults sortedEntries = diaryEntry.getEntries()

.where()

.findAllSortedAsync("time");

entryAdapter.updateData(sortedEntries);

的自动更新工作正常,但不知何故数据改变时没有动画。一个新的条目只是出现,但没有动画。此外,一旦RecyclerView首次被填充,我想要一个简短的动画 - 一个类似于[http://anthony-skr.com/article/recyclerview-items-animation-with-rebound-effect][1]的入口动画。

注:在我app's的build.gradle文件

dependencies {

// Other dependencies

compile 'io.realm:android-adapters:2.1.0'

}

在项目的build.gradle文件:

dependencies {

classpath 'com.android.tools.build:gradle:2.3.2'

classpath "io.realm:realm-gradle-plugin:3.1.4"

}

2017-05-22

Elias

+0

我没有看到任何动画代码.... –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值