質問するログイン新規登録

回答編集履歴

1

BoxViewのカスタムレンダラーに関して追記

2017/07/26 15:31

投稿

P3PPP
P3PPP

スコア359

answer CHANGED
@@ -9,4 +9,17 @@
9
9
  });
10
10
  ```
11
11
 
12
- iOSで動いているのは、ワーカースレッドで「描画の更新が必要である」ことのマークが行われ、更新自体はメインスレッドでGUIシステムが行なう、という状態になっているからだと思います。
12
+ iOSで動いているのは、ワーカースレッドで「描画の更新が必要である」ことのマークが行われ、更新自体はメインスレッドでGUIシステムが行なう、という状態になっているからだと思います。
13
+
14
+ -----
15
+
16
+ 2017/7/27 追記
17
+
18
+ 見直してきました。
19
+ 「BoxViewのカスタムレンダラーを作成」ということは`BoxRenderer`か、(その基底クラスである)`VisualElementRenderer<T>`の派生クラスを作っていると思います。
20
+
21
+ これらのクラスは`android.view.ViewGroup`から派生しています。
22
+
23
+ ViewGroupは子Viewのレイアウトを管理するクラスなので、通常ではViewGroup自身の`onDraw(Canvas)`メソッドは呼ばれません。
24
+ その代わり、子Viewに描画を移譲する`dispatchDraw(Canvas)`が呼ばれるので、こちらを使うと思った通りの動作を実現できるかもしれません。
25
+