本文整理匯總了Java中android.databinding.ViewDataBinding.setVariable方法的典型用法代碼示例。如果您正苦於以下問題:Java ViewDataBinding.setVariable方法的具體用法?Java ViewDataBinding.setVariable怎麽用?Java ViewDataBinding.setVariable使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類android.databinding.ViewDataBinding
的用法示例。
在下文中一共展示了ViewDataBinding.setVariable方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: onCreate
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ViewDataBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
vm = new MainViewModel();
binding.setVariable(BR.vm, vm);
binding.executePendingBindings();
}
示例2: convert
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void convert(MovieViewHolder helper, Movie item) {
ViewDataBinding binding = helper.getBinding();
binding.setVariable(BR.movie, item);
binding.setVariable(BR.presenter, mPresenter);
binding.executePendingBindings();
switch (helper.getLayoutPosition() %
2) {
case 0:
helper.setImageResource(R.id.iv, R.mipmap.m_img1);
break;
case 1:
helper.setImageResource(R.id.iv, R.mipmap.m_img2);
break;
}
}
示例3: convert
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void convert(BaseBindHolder helper, WeatherDailyResponse.DailyResult.Daily item) {
ViewDataBinding binding = helper.getBinding();
binding.setVariable(BR.daily, item);
binding.executePendingBindings();
SuperTextView superTextView = helper.getView(R.id.super_item_daily);
ArmsUtils.INSTANCE.obtainArmsComponent(mContext).imageLoader()
.loadImage(mContext,
ImageConfigImpl.builder()
.url(String.format(Locale.CHINESE, Api.API_WEATHER_ICON_URL, item.getCodeDay()))
.placeholder(R.mipmap.ic_placeholder)
.errorPic(R.mipmap.weather_unknown)
.transformation(new FitCenter())
.imageView(superTextView.getRightIconIV())
.build());
}
示例4: onCreateRealViewHolder
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
public RecyclerView.ViewHolder onCreateRealViewHolder(ViewGroup parent, int viewType) {
ViewDataBinding binding = DataBindingUtil.inflate(LayoutInflater.from(parent.getContext()), R.layout.ext_adapter_item, parent, false);
//添加監聽器
binding.setVariable(BR.adapter, this);
ItemViewHolder holder = new ItemViewHolder(binding.getRoot());
holder.setBinding(binding);
return holder;
}
示例5: bind
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
private static void bind(ViewGroup viewGroup, ItemView itemView, List<?> viewModelList, final OnItemClickListener<?> onItemClickListener) {
if (viewModelList != null && !viewModelList.isEmpty()) {
viewGroup.removeAllViews();
for (int pos=0; pos<viewModelList.size(); pos++) {
final Object viewModel = viewModelList.get(pos);
final ViewDataBinding binding = DataBindingUtil.inflate(LayoutInflater.from(viewGroup.getContext()),
itemView.layoutRes(), viewGroup, true);
binding.setVariable(itemView.bindingVariable(), viewModel);
setListener(onItemClickListener, ViewHolder.createViewHolder(viewGroup.getContext(), binding.getRoot()), viewModel, pos);
}
}
}
示例6: onBindViewHolder
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
public void onBindViewHolder(DataBindingViewHolder holder, int position) {
super.onBindViewHolder(holder, position);
ViewDataBinding binding = holder.getBinding();
binding.setVariable(BR.listener, mStoryListener);
binding.executePendingBindings();
}
示例7: onCreate
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ViewDataBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_currency_details);
binding.setVariable(BR.model, mViewModel);
if (!isRetained(savedInstanceState)) {
final String currencyCode = getIntent().getStringExtra(INTENT_EXTRA_PARAM_CURRENCY_CODE);
Bundle bundle = new Bundle();
bundle.putString(CurrencyDetailsViewModel.KEY_CURRENCY_CODE, currencyCode);
mViewModel.onLoad(bundle);
}
}
示例8: onCreate
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ViewDataBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_currencies);
binding.setVariable(BR.model, mViewModel);
if (!isRetained(savedInstanceState)) {
mViewModel.onLoad(null);
}
}
示例9: loadComponent
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@BindingAdapter("component")
public static void loadComponent(ViewGroup viewGroup, MvvmComponent component) {
if (component != null) {
ViewDataBinding binding = DataBindingUtil.inflate(LayoutInflater.from(viewGroup.getContext()), component.getLayoutResId(), viewGroup, false);
View view = binding.getRoot();
binding.setVariable(BR.vm, component.getViewModel());
binding.executePendingBindings();
viewGroup.removeAllViews();
viewGroup.addView(view);
}
}
示例10: bind
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
private static void bind(RecyclerView container, final ItemView item, final List<?> datas,
final List<? extends ItemView> header, final List<?> headerDatas,
final OnItemClickListener<?> onItemClickListener) {
RecyclerView.Adapter<?> adapter;
if (datas != null) {
// set default LayoutManager.
if(container.getLayoutManager() == null)
setLayoutManager(container, LayoutManagers.linear());
adapter = container.getAdapter();
if(adapter == null) {
// initialize, adapter is only set once !!!
CommonRvAdapter innerAdapter;
container.setAdapter(adapter = new HeaderAndFooterWrapper<>(innerAdapter = new CommonRvAdapter<Object>(container.getContext(), item.layoutRes(), (List<Object>)datas) {
@Override
protected void convert(ViewHolder holder, Object data, int position) {
DataBindingUtil.bind(holder.itemView).setVariable(item.bindingVariable(), data);
}
}));
innerAdapter.setOnItemClickListener(onItemClickListener);
// add headers !!!
if (header!=null && headerDatas != null) {
HeaderAndFooterWrapper headerAdapter = (HeaderAndFooterWrapper) adapter;
headerAdapter.removeHeaderViews();
for (int i = 0; i < header.size() && i < headerDatas.size(); i++) {
ItemView _itemView = header.get(i);
Object _data = headerDatas.get(i);
LayoutInflater inflater = LayoutInflater.from(container.getContext());
ViewDataBinding binding = DataBindingUtil.inflate(inflater, _itemView.layoutRes(), container, false);
headerAdapter.addHeaderView(binding.getRoot());
binding.setVariable(_itemView.bindingVariable(), _data);
}
}
}
adapter.notifyDataSetChanged();
}
}
示例11: onBindViewHolder
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
private void onBindViewHolder(ViewDataBinding dataBinding, Object data) {
//還可以寫一些其他的綁定業務邏輯......
dataBinding.setVariable(BR.itemData, data);
}
示例12: onBindViewHolder
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void onBindViewHolder(ViewDataBinding dataBinding, ItemEmptyAndError data) {
dataBinding.setVariable(BR.itemData, data);
}
示例13: initInputView
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void initInputView(ViewDataBinding dataBinding) {
//把自身實例對象通過ViewDataBinding綁定到視圖中
dataBinding.setVariable(BR.itemData, this);
}
示例14: convert
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
@Override
protected void convert(BaseBindHolder helper, TextContent item) {
ViewDataBinding binding = helper.getBinding();
binding.setVariable(BR.content, item);
binding.executePendingBindings();
}
示例15: attachData
import android.databinding.ViewDataBinding; //導入方法依賴的package包/類
/**
* This method attaches data to the layout file.
* <p>
* The name of the variable is <strong>"data"</strong> generally.
*
* @param binding the binding of the layout resource file.
*/
private void attachData(ViewDataBinding binding) {
binding.setVariable(BR.data, this);
}