2016-03-25 12 views
0

私はアニメーションLEDバナーを作成しようとしています。私は5x8桁のディスプレイを使って文字のビューを作成し、テキストを移動させることができます(https://github.com/drollig8/LEDBanner.git)。問題:10文字のテキストのみで、iOSは毎秒400回のビューをリフレッシュする必要があります。この種のCPUはCPUを殺します。ビューを使用してスイフトのLEDバナー

この取り組みをより省エネにするにはどうすればよいですか?

+0

LEDの代わりにフォントを使用してはどうですか。それはオプションですか? – KeyMaker00

答えて

1

右から左へのスクロール表示の1つの方法があります。

  1. drawRect関数を使用して5x8セルを描画できるカスタムビューを作成します。
  2. これらのビューのうち11個を使用してディスプレイを表現します。サブビューとして適切なサイズのビューに追加します。
  3. 1/25秒ごとに11個のビューを移動し、左端がスクロールしている場合は右側に移動し、新しい文字データでそれを更新します。
+0

細胞の内容のように聞こえるのは修正されたままです。しかしスムーズなスクロールでは、文字はセル内をスライドしなければならず、つまり、1秒間に25回新しいセルを作成する必要があります。また、各セルには、「ビット」または「数字」を表示するために40のサブビューが含まれている必要があります。 –

+0

1/25秒ごとに1/5のセルを移動します。ビットは長方形の塗りつぶしです。 drawRectルーチンで塗りつぶされた四角形を描く方法を見てください。この方法では合計12のビューを使用し、新しい文字は最初に画面に入力されたときにのみ描画されます。 – vacawama

+0

ビットを表すためにサブビューを使ってこのようにすることができます。 「オン」ビットと同じだけ、セルのサブビューをいくつでも作成できます。文字をスクロールすることは、セルのスーパービューを移動するのと同じくらい簡単です。このようにすると、表示を表す1つのビュー、11の文字のサブビュー、および "オン"ピクセルを表す各文字のサブビューの3つのレベルがあります。 – vacawama

関連する問題