0

私は問題があります。青から赤へのグラデーションを取得する必要があります。私の問題は、私が2倍の価値を持っていることであり、文字列や整数に関係なく、色を取得する必要があります。0%のように#FF0000FFと100%id#FFFF0000です。

4

2 に答える 2

1

あなたは2つのことをする必要があります:

  1. 青の量と赤の量を把握する
  2. パーセントを0〜255の数値にスケーリングします

例えば:

// scale from percents to a number between 0-255
private int scale(int percents)
{
    return (percents * 255) / 100;
}

private int getColorForPercents(int percents)
{
    int red = scale(percents);
    int blue = scale(100 - percents);
    return 0xff000000 | (red << 16) | (blue);
}
于 2012-05-11T20:25:35.227 に答える
0

FFは255であるため、2.55がそれぞれ1パーセントを実行します。目的のパーセント数をHEXに丸めて変換するだけで、完了です。

于 2012-05-11T17:13:19.363 に答える