android - Android 中的可见性消失
问题描述
我正在研究动态视图。我很喜欢生成图像视图的 id ,使用循环进行约束并在代码中设置所有内容。我想要一个暂停和开始按钮。如果我点击暂停,除了播放按钮之外,一切都应该是不可见的。是否可以?
ImageView[][] imageView = new ImageView[levelHeight][levelWidth];
//setting each imageview's id and conatraints
for (int i = 0; i < 5; ++i) {
for (int j = 0; j < 5; ++j) {
imageView[i][j] = new ImageView(this);
imageView[i][j].setId(View.generateViewId());
imageView[i][j].setLayoutParams(new ConstraintLayout.LayoutParams(viewWidth, viewWidth));
mainLayout.addView(imageView[i][j]);
ConstraintSet constraintSet = new ConstraintSet();
constraintSet.clone(mainLayout);
if ((i == 0) && (j == 0)) {
constraintSet.connect(imageView[i][j].getId(), ConstraintSet.LEFT, mainLayout.getId(), ConstraintSet.LEFT, 0);
constraintSet.connect(imageView[i][j].getId(), ConstraintSet.TOP, mainLayout.getId(), ConstraintSet.TOP, 0);
}
if (j != 0) {
constraintSet.connect(imageView[i][j].getId(), ConstraintSet.LEFT, imageView[i][j - 1].getId(), ConstraintSet.RIGHT, 0);
constraintSet.connect(imageView[i][j].getId(), ConstraintSet.TOP, imageView[i][j - 1].getId(), ConstraintSet.TOP, 0);
}
if (i != 0) {
// newTopMargin=newTopMargin+viewHeight;
constraintSet.connect(imageView[i][j].getId(), ConstraintSet.LEFT, imageView[i - 1][j].getId(), ConstraintSet.LEFT, 0);
constraintSet.connect(imageView[i][j].getId(), ConstraintSet.TOP, imageView[i - 1][j].getId(), ConstraintSet.BOTTOM, 0);
}
constraintSet.applyTo(mainLayout);
解决方案
为您希望使其可见性消失的每个项目定义此:
item.visibility=View.GONE
推荐阅读
- ubuntu - apt-get 无法安装和删除软件包
- javascript - Storybook 抛出错误:未定义不可迭代(无法读取属性 Symbol(Symbol.iterator))
- android-studio - 无法使用 TextFormField 和 FlatButton 验证输入
- python - BufferedReader,无法读取 BMP。TypeError:无法解压不可迭代的 NoneType 对象
- database - 数据库查询工具未运行
- macos - 无法在 MacOS 上删除 Gatsby NPM 包
- python - 在某些条件下从数组数组中保存一个数组
- javascript - 未捕获的类型错误:$.number 不是函数
- python - 使用 Python 登录后抓取 ASPX,但每次登录都会为您提供不同的 URL
- java - 用于按升序对版本控制字符串进行排序的 Java 程序