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

質問編集履歴

2

update()の場所について

2018/04/16 14:36

投稿

sakuramoti
sakuramoti

スコア20

title CHANGED
File without changes
body CHANGED
@@ -231,4 +231,14 @@
231
231
  }
232
232
  }, 100, 100, TimeUnit.MICROSECONDS);
233
233
  }
234
- ```
234
+ ```
235
+
236
+ #構成
237
+ ```
238
+ public class SimulationView{
239
+ class Ball {
240
+ public void update() {}
241
+ }
242
+ }
243
+ ```
244
+ のようになっています。

1

updateの実装について追加いたしました。 ログにエラーのようなものは出ていないと思います。

2018/04/16 14:35

投稿

sakuramoti
sakuramoti

スコア20

title CHANGED
File without changes
body CHANGED
@@ -191,4 +191,44 @@
191
191
  setTextを使っての変更(止まってしまう)
192
192
 
193
193
  ボールが壁に当たったタイミングでtextviewを変更できるようにできませんか?
194
- java android ともに初心者で変なことをしているかもしれませんがどなたか教えていただけませんか。
194
+ java android ともに初心者で変なことをしているかもしれませんがどなたか教えていただけませんか。
195
+
196
+
197
+
198
+ #追加
199
+ このようにupdateを実行しています。
200
+ ```
201
+
202
+ @Override
203
+ public void surfaceCreated(SurfaceHolder holder) {
204
+ windowsWidth = getWidth();
205
+ windowsHeight = getHeight();
206
+ draw();
207
+ startnow();
208
+ }
209
+
210
+ public void draw(){
211
+ Canvas c = getHolder().lockCanvas();
212
+ //背景の描画
213
+ backGroundBitmap= BitmapFactory.decodeResource(getResources(), R.drawable.wood);
214
+ //bitmap大きさ設定
215
+ backGroundBitmap = Bitmap.createScaledBitmap(backGroundBitmap, windowsWidth, windowsHeight, false);
216
+ c.drawBitmap(backGroundBitmap, 0, 0, myPaint);
217
+
218
+ //ボールの描画
219
+ c.drawBitmap(ball.myBitmap, ball.x, ball.y, myPaint);
220
+ holder.unlockCanvasAndPost(c);
221
+ }
222
+
223
+ public void startnow(){
224
+ ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
225
+ executor.scheduleAtFixedRate(new Runnable() {
226
+ @Override
227
+ public void run() {
228
+ ball.update();
229
+ Log.d("test", "ループ");
230
+ draw();
231
+ }
232
+ }, 100, 100, TimeUnit.MICROSECONDS);
233
+ }
234
+ ```