当前位置: 首页 > 编程笔记 >

Android 在ButterKnife中解除绑定视图

刘泰
2023-03-14
本文向大家介绍Android 在ButterKnife中解除绑定视图,包括了Android 在ButterKnife中解除绑定视图的使用技巧和注意事项,需要的朋友参考一下

示例

片段的视图生命周期与活动不同。在onCreateView中绑定片段时,在onDestroyView中将视图设置为null。当您调用bind为您执行此操作时,Butter Knife会返回Unbinder实例。在适当的生命周期回调中调用其unbind方法。

一个例子:

public class MyFragment extends Fragment {
  @BindView(R.id.textView) TextView textView;
  @BindView(R.id.button) Button button;
  private Unbinder unbinder;

  @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.my_fragment, container, false);
    unbinder = ButterKnife.bind(this, view);
    // TODO使用字段...
    return view;
  }

  @Override public void onDestroyView() {
    super.onDestroyView();
    unbinder.unbind();
  }
}

注意:调用不是必需的,但建议您调用unbind(),onDestroyView()因为如果您的应用程序具有较大的堆栈,它将节省大量内存。

 类似资料:
  • 我正在将一个kotlin库绑定到xamarin android,绑定并解决所有错误后,我得到了一个意外错误,没有任何解释或异常原因, JAVALang.NoClassDefFoundError:“未能解析:Landroidx/viewbinding/viewbinding;” 这是我得到的堆栈痕迹: MAYActivity.cs:40在Android。App.活动。n_OnCreate_Landr

  • 问题内容: 我知道您可以这样取消$ watch的绑定: 但是您可以在watch函数声明中取消绑定手表吗?因此,在手表执行一次之后,它会自行解除捆绑吗?就像是: 问题答案: 您可以按照已经执行的方法进行操作,在函数内部调用“ deregistration”:

  • 我正在尝试在Kotlin和碎片中做视图绑定。 但是当它有很多对象的时候。我需要给它下个定义。所以我不得不看: Kotlin Android视图绑定:findViewById vs Butternife vs Kotlin Android扩展 和 但是我在Android Studio中找不到 我可以在我的程序中做什么?

  • 我们正在做下面的过程来与BLE设备配对。 连接()发现服务()配对(绑定)。 有时Android操作系统会以一种奇怪的方式将我们的BT设备拆开,即: 不发送绑定状态已更改的广播通知 当设备成功配对时,ACTION_BOND_STATE如下所示。 [6:19:28 PM]Himen Patel:04-09 18:18:27.325:D/BluetoothGatt(8380):onCharacteri

  • 我刚刚看完Advanced Data Binding(高级数据绑定)-谷歌I/O 2016,我想应用以下内容来减少我在不同视图中使用的表达式的重复。 但我不能让它在我的情况下起作用: 我得到了 错误:(426,39)标识符必须具有XML文件中的用户定义类型。btn_列表缺少它 编辑: 我在同一个演讲中错过了一个重要的观点...视图ID是骆驼钙化的。