java - 如何根据屏幕尺寸重新计算变量?
问题描述
所以,我有 2 个变量:this.width
和this.height
,我将它们传递给一个名为 的类GuiElement
,如图所示(这是一个简化的示例):
int w = this.width / 5;
int aspectRatio = 2;
GuiElement guiElement = new GuiElement(w, w * aspectRatio);
这最初可以工作,但是当屏幕调整大小时,GuiElement
不会改变大小。
我希望能够在this.width
或this.height
更改(窗口调整大小)时重新计算宽度和高度。
我已经尝试/考虑过的事情:
吸气剂:
- 由于我必须根据我拥有的 GuiElement 数量编写大量的 getter,因此无法工作,我可以创建一个函数来根据参数计算屏幕大小,但我宁愿不这样做(为了使我的 ui 框架尽可能简单并为用户提供尽可能多的可定制性)
每次绘制屏幕时传入变量:
- 我已经考虑过这一点,但它会使一切变得混乱,并且不适用于我当前的设计。
我正在使用 Java 8 btw(Minecraft 标记,因为我正在使用 mixins 来修改我的世界)
请不要告诉我使用吸气剂。我已经考虑了很多次,并得出结论,它不适用于我正在做的事情。
解决方案
推荐阅读
- c++ - 一维数组和三维数组使用一个模板
- angular - 尝试使用 webpack 构建 angular4 旧项目但失败
- c++ - 调整窗口大小时出现奇怪的伪影
- swift - 按顺序执行文本转语音
- javascript - 在javascript中将签名字段添加到pdf
- kotlin - org.springframework.data.mapping.MappingException 与 Kotlin 和密封类
- json - 尽管请求 JSON,Dynamic 365 API 仅返回 XML
- java - Windows 上的 Java 编译器不会创建可执行文件,只有 .class
- javascript - 如何在一定量的反应后使反应消失?
- node.js - 如何在我的 Flutter 应用程序中获取服务器发送事件?