计算最大宽度和高度

Calculate Max Width and Height

我需要根据屏幕的总宽度和高度(以像素为单位)计算 X 个元素的宽度和高度,以便编写一个函数。每个元素的单个元素 x 和 y 应该相同。

我知道屏幕的高度和宽度,但元素的数量可能会有所不同。

例如,如果我有 20 个 elements/buttons,我希望它们占据整个屏幕;同样,如果我有 10 个 elements/buttons,我希望它们占据整个屏幕。

示例:屏幕为 628x1289,我有 20 个元素。如何计算每个元素的大小?

这类似于网络响应,但它不适用于网络应用程序,因此我需要弄清楚如何使用像素来计算它。

我希望这是有道理的,但如果没有,请告诉我。

史蒂夫

P.S。这似乎是相关的,但我不是数学专家所以不知道他们在说什么......

https://en.wikipedia.org/wiki/Knapsack_problem

好像他们已经知道了物体的大小,这与我的需求相反。我有一个 space 并且想知道我需要什么 x 和 y 来设置每个对象以适应 space.

自由参数过多。做一些限制来解决任务。

示例:让元素比例(width/height 比率)等于屏幕比例

 C = ScreenWidth / ScreenHeight

现在让未知元素高度为 h,因此宽度为 w = C * h

因此每一行可能包含 ScreenWidth div (C * h),每一列可能包含 ScreenHeight div h,其中 div 是整数除法。

现在你可以找到不等式的解(最大h值)

 numberX <= (ScreenWidth div (C * h)) * (ScreenHeight div h) 

并获取填满屏幕的 numberX 个元素的高度和宽度(最后一行可能不完整)