浮动操作按钮和警报对话框的Butterknife绑定视图会导致错误

时间:2018-01-16 12:21:22

标签: java android butterknife

我的活动包含> [!] The platform of the target `*******` (tvOS 9.0) is not compatible > with `Firebase/Core (4.8.0)`, which does not support `tvos`. 。单击该按钮将创建一个对话框,其中包含三个编辑文本框以进行输入。我已将FloatingActionButton用于所有三个编辑框。

@BindView

现在我必须使用

@BindView(R.id.id_edit_text)
EditText idEditText;
@BindView(R.id.name_edit_text)
EditText nameEditText;
@BindView(R.id.desc_edit_text)
EditText descEditText;

现在在我的浮动操作按钮上使用public void showAlertDialog(){ ... AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); LayoutInflater inflater=this.getLayoutInflater(); View dialogView = inflater.inflate(R.layout.dialog_layout,null); ButterKnife.bind(this,dialogView); ... }

@Onclick

我必须在活动的@Onclick(R.id.my_fab_button) public void createAlert(){ ... showAlertDialog(); ... } 方法上绑定此视图

OnCreate

此绑定导致错误,因为此语句尝试绑定先前声明的警告对话框中的视图,这是不正确的。

当我已经使用Butterknife.bind调用警报对话框时,如何绑定浮动操作按钮?

这是警报对话框的布局文件

Butterknife.bind(this)

1 个答案:

答案 0 :(得分:0)

哟需要在每个视图声明中添加@optional,如下所示

@optional
@BindView(R.id.id_edit_text)
EditText idEditText;
@optional
@BindView(R.id.name_edit_text)
EditText nameEditText;
@optional
@BindView(R.id.desc_edit_text)
EditText descEditText;