package com.huhx0015.gw2at.view.views;
import android.annotation.TargetApi;
import android.content.Context;
import android.databinding.BindingMethod;
import android.databinding.BindingMethods;
import android.graphics.Color;
import android.os.Build;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.RelativeLayout;
import com.huhx0015.gw2at.databinding.ViewQuaggansBinding;
import com.huhx0015.gw2at.viewmodels.views.QuaggansViewModel;
/**
* Created by Michael Yoon Huh on 2/1/2017.
*/
@BindingMethods({
@BindingMethod(type = QuaggansView.class, attribute = "app:quaggansNameText", method = "setQuaggansName"),
@BindingMethod(type = QuaggansView.class, attribute = "app:quaggansImageUrl", method = "setQuaggansImage")
})
public class QuaggansView extends RelativeLayout {
private Context mContext;
private QuaggansViewModel mViewModel;
private ViewQuaggansBinding mBinding;
public QuaggansView(Context context) {
super(context);
mContext = context;
initView();
}
public QuaggansView(Context context, AttributeSet attrs) {
super(context, attrs);
mContext = context;
initView();
}
public QuaggansView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mContext = context;
initView();
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public QuaggansView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
mContext = context;
initView();
}
private void initView() {
LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mBinding = ViewQuaggansBinding.inflate(inflater, this, true);
mViewModel = new QuaggansViewModel();
mBinding.setViewModel(mViewModel);
initText();
}
private void initText() {
mBinding.quaggansNameText.setShadowLayer(4, 2, 2, Color.BLACK);
}
public void setQuaggansName(String name) {
mViewModel.setQuaggansNameText(name);
}
public void setQuaggansImage(String imageUrl) {
mBinding.quaggansImage.setImageDrawable(null);
mViewModel.setQuaggansImage(imageUrl, mContext);
}
}