android - 当我单击浮动操作按钮时,为什么我的应用程序会崩溃?
问题描述
当我单击按钮时,我的应用程序崩溃了,我不知道它为什么会这样,也不知道如何修复它。
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mLayout.addView(createNewEditText(mEditText.getText().toString()));
}
});
private EditText createNewEditText(String text) {
ConstraintLayout mConstraintLayout = (ConstraintLayout) findViewById(R.id.planlaeg_l);
ConstraintSet set = new ConstraintSet();
EditText et = new EditText(this);
mConstraintLayout.addView(et,0);
set.clone(mConstraintLayout);
set.connect(et.getId(), ConstraintSet.TOP, mConstraintLayout.getId(), ConstraintSet.TOP, 60);
set.applyTo(mConstraintLayout);
et.setText(text);
return et;
}
解决方案
我认为您遇到了类似“java.lang.IllegalStateException:指定的孩子已经有父母。您必须先在孩子的父母上调用 removeView()”的错误。
步骤1:
mConstraintLayout.addView(et,0);
第2步:
返回等;
第 3 步:
mLayout.addView(createNewEditText(mEditText.getText().toString()));
如何修复它:
- 更改逻辑添加等视图(在方法 createNewEditText / 外部)
例子:
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
createNewEditText(mEditText.getText().toString());
}
});
推荐阅读
- css - 如何在 laravel 的 .css 文件中使用配置文件值
- javascript - 如何做减少,过滤和嵌套数组工作javascript
- java - 如何在服务层使用相同的方法模拟 dao 层?
- android - Flutter:任务':app:compileReleaseKotlin'的执行失败
- java - JHipster React 在另一个相关实体的详细信息屏幕中显示一个实体的列表
- ruby-on-rails - 在 Ruby 中将 XML 转换为 Qt 翻译的字符串 (.ts) 文件
- flutter - Flutter - 构建失败可能是由于插件中的 AndroidX 不兼容
- swift5 - 无法通过 Swift 中的 V2 API 在 LinkedIn 上进行文本共享
- ag-grid - 如何将总计放在 AG GRID 的顶部
- visual-studio - 如何通过 Bridge to Kubernetes 使用托管标识?