2016-08-23 45 views
0

我是Android新手。我写了一个自定义视图,但我不知道在哪里调用bindunbind方法。我已搜索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); 
    } 
} 

回答

0

您可以标注您正在做正确的类中的视图,因为没有错误,这意味着ButterKnife.bind(本);正在发生。它没有必要解除这个应该完全正常。

相关问题