java - 如何在可见的两个视图之间切换?
问题描述
我正在制作一个有助于为乒乓球比赛打分的应用程序。我处于最后阶段,但在每两点切换服务器时遇到问题。我已经考虑了很多,但我只能让它切换一次。我知道这可能是一个简单的解决方案,但它只是没有来找我。
这是我切换一次的方式。每次按下按钮时我都在使用计数,当它达到可被 2 整除的数字时,它会向右切换。但是,使用这种逻辑很难切换回来!提前致谢。
public void serveSwitch() {
TextView leftServe = findViewById(R.id.leftServe);
TextView rightServe = findViewById(R.id.rightServe);
serverCount++;
if (server.serve=="left") {
if (serverCount % 2 == 0) {
rightServe.setVisibility(View.VISIBLE);
leftServe.setVisibility(View.GONE);
}
}
解决方案
我正在努力解决的部分是关于如何每两点切换可见性的逻辑
如果我的观点正确,您希望每两点将可见性从关闭切换到开启,反之亦然
您可以执行以下操作:
...
if (server.serve=="left") {
if (serverCount % 2 == 0) {
switch (rightServe.getVisibility()) {
case View.GONE:
rightServe.setVisibility(View.VISIBLE);
break;
case View.VISIBLE:
rightServe.setVisibility(View.GONE);
break;
}
switch (leftServe.getVisibility()) {
case View.GONE:
leftServe.setVisibility(View.VISIBLE);
break;
case View.VISIBLE:
leftServe.setVisibility(View.GONE);
break;
}
}
}
注意:我按您所说的那样保留了相等性,这没有问题。.equals()
但一般来说,在比较 java 中的字符串时应该使用。
推荐阅读
- python - 使用多个条件语句逐行矢量化 pandas df
- c# - 如何在 Open API Specification 3.0 中添加 allof 类型?
- python-3.x - Only One Pod is consuming all the computing resource although specified the limits and requests resources in pod template
- javascript - 数据表排序问题
- python-3.x - How to pass RGB information to do Thresholding of an image
- python - 如何在 Python 中将 query_string(Lucene 语法)与 Elasticsearch DSL 结合使用?
- mule - Mule 4 与 Weblogic 队列的连接
- c# - 如何修复在 C# 中选择按邮政编码分组的客户订单的 get 方法
- r - 在 mlr 包中调整而不重新采样(聚类)
- bash - 创建脚本以从 csv 文件复制 Web