android:DataBinding使用小结(四,最新阿里Android高级面试题及答案

本文总结了Android DataBinding库的使用,包括创建BaseRecyclerViewActivity处理布局绑定,展示数据LoadMore,以及在Activity中调用并实现SwipeRefreshLayout的刷新和RecyclerView的加载更多功能。使用了Glide加载图片,并通过BaseQuickAdapter处理数据动画。
摘要由CSDN通过智能技术生成
  • 创建BaseRecyclerViewActivity处理布局绑定

package tsou.cn.databinding;

import android.databinding.DataBindingUtil;

import android.databinding.ViewDataBinding;

import android.os.Bundle;

import android.support.annotation.Nullable;

import android.support.v7.widget.RecyclerView;

import android.view.View;

import android.view.ViewGroup;

import android.widget.ImageView;

import android.widget.TextView;

public abstract class BaseRecyclerViewActivity extends BaseActivity {

protected View notDataView;

protected View errorView;

protected M binding;

@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

binding = DataBindingUtil.setContentView(this, getLayoutId());

setEmptyAndErrorView(getRecyclerView(), R.mipmap.icon_empty, getString(R.string.the_server_did_not_return_data));

initData(savedInstanceState);

initListener();

}

public abstract int getLayoutId();

public abstract RecyclerView getRecyclerView();

protected abstract void initData(Bundle savedInstanceState);

protected void initListener() {

}

protected void setEmptyAndErrorView(RecyclerView mRecyclerView, int emptyIcon, String emptyText) {

notDataView = getLayoutInflater().inflate(R.layout.empty_view, (ViewGroup) mRecyclerView.getParent(), false);

ImageView empty_icon = (ImageView) notDataView.findViewById(R.id.iv_empty_icon);

TextView empty_text = (TextView) notDataView.findViewById(R.id.tv_empty_no_data);

empty_icon.setImageResource(emptyIcon);

empty_text.setText(emptyText);

notDataView.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

onRefresh();

}

});

errorView = getLayoutInflater().inflate(R.layout.error_view, (ViewGroup) mRecyclerView.getParent(), false);

errorView.setOnClickListener(new View.OnClickList

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值