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

回答編集履歴

1

修正

2017/01/21 01:23

投稿

aja
aja

スコア3733

answer CHANGED
@@ -7,4 +7,61 @@
7
7
  sv.addView(mv);
8
8
  setContentView(sv);
9
9
  ```
10
- ただし、MyViewでonMeasure()を呼んで高さを設定しないといけませんが
10
+ ただし、MyViewでonMeasure()を呼んで高さを設定しないといけませんが
11
+
12
+ ~~~
13
+ このような感じでしょう
14
+ ![イメージ説明](2616668bc295d1f798054070f6ce488b.gif)
15
+
16
+ 以下がコードです、タイマーは不完全なのとここでは主題ではないので省いています
17
+
18
+
19
+ MainActivity.java
20
+ ```
21
+ public class MainActivity extends AppCompatActivity {
22
+
23
+ private TestView testView;
24
+
25
+ @Override
26
+ protected void onCreate(Bundle savedInstanceState) {
27
+ super.onCreate(savedInstanceState);
28
+
29
+ testView = new TestView(this);
30
+ ScrollView scrollView = new ScrollView(this);
31
+ scrollView.addView(testView);
32
+ setContentView(scrollView);
33
+ }
34
+ }
35
+ ```
36
+
37
+ TestView.java
38
+ ```
39
+ public class TestView extends View {
40
+ Bitmap bmp;
41
+ private Paint paint = new Paint();
42
+
43
+ public TestView(Context context) {
44
+ super(context);
45
+ bmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
46
+ }
47
+
48
+ @Override
49
+ protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
50
+ int width = MeasureSpec.getSize(widthMeasureSpec);
51
+ int height = 10000;
52
+ setMeasuredDimension(width, height);
53
+ }
54
+
55
+ public void onDraw(Canvas canvas) {
56
+ canvas.drawBitmap(bmp, 200, 500, paint);
57
+ canvas.drawBitmap(bmp, 500, 800, paint);
58
+ canvas.drawBitmap(bmp, 800, 1500, paint);
59
+ }
60
+ }
61
+ ```
62
+
63
+ コピペと質問を繰り返すのはそろそろ止めて
64
+ 自力で解決、自力でサイト情報を取り込めるように
65
+ 基礎から勉強したほうがいいのではないでしょうか?
66
+ スクールとか、誰か分かっている人から直接教えてもらった方がいいと思います
67
+