android - 如何以编程方式从另一个布局更改元素
问题描述
我有一个自定义对话框,其中包含自定义布局作为内容。
filterMainDialog.setContentView(R.layout.filter_main);
一切正常(显示和东西),但如果我尝试以编程方式更改该布局中的元素(如检查单选按钮),我的应用程序崩溃,我尝试了所有可能的方法。有什么建议吗?
解决方案
这可能是因为您的布局尚未膨胀,您的 onCreate 应该看起来像这样:
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final View content = View.inflate(getActivity(),
R.layout.add_quantity_produced_dialog_frag, null);
mNewQuantity = content.findViewById(R.id.new_quantity);
mNewQuantity.setText(String.valueOf(mOriginalQuantity));
final AlertDialog dialog = new AlertDialog.Builder(getActivity())
.setView(content)
.create();
return dialog;
}
推荐阅读
- android - Android AWS TransferService 在 API 级别 26 及更高版本中不起作用
- java - 为什么输出在下面的java代码中?
- mysql - 如何找到曾经相同但现在已损坏的两张表之间的差异
- boost-log - Boost Log 轮换文件名模式整数从未重新启动
- python-3.x - Kivy Screenmanager 和 RecycleView 的滞后
- c++ - 无法迭代具有结构“字符串”的哈希图:[list] C++
- python - 使用 Python 中的 package_create API 调用创建包含资源的包
- amazon-cloudformation - 在创建弹性搜索域时,我可以将 aws cognito 用于 cloudformation 的 kibana 吗?
- python - 我在使用 Python pip 安装 Pyhook 时遇到错误“无法导入 main”
- ruby - 如何找到到给定位置的线串的最近点 - rgeo