0
我是Android新手。我写了一个自定义视图,但我不知道在哪里调用bind
和unbind
方法。我已搜索this documentation。它似乎建议在onFinishInflate()
回调中使用bind
。但我bind
在其构造函数的视图,并没有任何方式崩溃。这是对的吗?那么unbind
呢?我发现this question,它建议在onDetachedFromWindow()
回调中使用unbind
。它是必需的还是必要的?使用ButterKnife时,在自定义视图中调用bind和unbind方法的位置?
public class BloodIndicatorView extends FrameLayout {
@Bind(R.id.ll_record_bloodpress)
LinearLayout llRecordBloodpress;
@Bind(R.id.ll_record_bloodsugar)
LinearLayout llRecordBloodsugar;
private Context mContext;
public BloodIndicatorView(Context context) {
this(context, null);
}
public BloodIndicatorView(Context context, AttributeSet attrs) {
this(context, attrs, -1);
}
public BloodIndicatorView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mContext = context;
init();
}
private void init() {
LayoutInflater.from(mContext).inflate(R.layout.health_blood_indicator, this);
ButterKnife.bind(this);
}
public void update() {
}
@OnClick(R.id.ll_record_bloodpress)
public void recordBloodpress() {
Intent intent = BloodPressActivity.getIntent2Act(mContext);
mContext.startActivity(intent);
}
@OnClick(R.id.ll_record_bloodsugar)
public void recordBloodsugar() {
Intent intent = BloodSugarActivity.getIntent2Act(mContext);
mContext.startActivity(intent);
}
}