-1

私はあなたがどれだけ速く走ったかを監視するアプリに取り組んでいます。そのためには、あなたの最高速度を示す機能が必要です。しかし、私がどのように行うかを見つけることができません。

local speedText = string.format( '%.3f', event.speed )
speed.y = 250
speed.x = 125
local numValue = tonumber(speedText)*3.6
if numValue ~= nil then
    speed.text = math.round( numValue )
end

speedText上記の番号に変更しました。

Conora SDK/Lua でプログラミングします

4

1 に答える 1

2

スタック オーバーフローで質問するときは、より多くの情報を提供する必要がありますが、とにかくお役に立てるようにしましょう。

あなたのコードは、おそらく次のようなイベント リスナー内にあります。

local listener = function(event)
  local speedText = string.format( '%.3f', event.speed )
  speed.y = 250
  speed.x = 125
  local numValue = tonumber(speedText)*3.6
  if numValue ~= nil then
      speed.text = math.round( numValue )
  end
end

現在の速度を表示します。代わりに最大速度を表示したい場合は、次のようにします。

local maxSpeed = 0
local listener = function(event)
  local speedText = string.format( '%.3f', event.speed )
  speed.y = 250
  speed.x = 125
  local numValue = tonumber(speedText)*3.6 or 0
  if numValue > maxSpeed then
      maxSpeed = numValue
      speed.text = math.round( numValue )
  end
end

アイデアは、以前の最大速度を格納するために、リスナー (またはグローバル) の外部で定義された変数が必要であるということです。イベントリスナーが呼び出されるたびに、現在の速度が以前の最大速度よりも高い場合は、それが新しい最大速度になるため、保存して表示します。

于 2013-02-14T13:44:57.690 に答える