回答編集履歴

2

参考urlを追記しました

2017/12/06 16:35

投稿

hiramekun
hiramekun

スコア428

test CHANGED
@@ -21,6 +21,12 @@
21
21
  基本的に、ViewはActivityがなんであるかを知りません。これはインターフェースを考える上で重要ですね。例えばですが、他のActivityからTestViewをもしも使いたくなった時に、TestViewがMainActivityに依存していると実装をやり直さなければなりません。
22
22
 
23
23
  そこで、そもそもとして**Viewの中に特定のActivityを持たせない**のが基本方針になります。
24
+
25
+ 参考url: [疎結合って何?](http://blog.codebook-10000.com/entry/20131108/1383907001)
26
+
27
+ > ソフトウェアの拡張性とは「いかに変更に容易に適応できるかどうか」である。
28
+
29
+ 依存関係が多いと、あるプログラムの変更が他のプログラムに影響を及ぼし、変更を行うごとに大量のテストが必要になる。
24
30
 
25
31
 
26
32
 
@@ -53,6 +59,8 @@
53
59
  ```
54
60
 
55
61
  そして、これを`NextActivity`の側から呼び出します。(Intentの受け取りは他の回答の通りに修正し、受け取れているとします。)
62
+
63
+ 参考url: [AndroidのViewに絵を描く](https://qiita.com/nittyan/items/62539b190e4dac89ec71)
56
64
 
57
65
  NextActivity
58
66
 

1

見出しを加えました。

2017/12/06 16:35

投稿

hiramekun
hiramekun

スコア428

test CHANGED
@@ -1,8 +1,14 @@
1
+ ## まずは結論
2
+
1
3
  設計を変えた方が良いと思います。
4
+
5
+ TestViewの中にupdateViewのようなメソッドを定義し、その引数にdataを入れて渡してあげます。
2
6
 
3
7
  ActivityやIntentの扱いに関しては他のお二方のおっしゃる通りですので、そちらを参考になさってください。
4
8
 
5
9
 
10
+
11
+ ## 問題点
6
12
 
7
13
  問題はTestViewの中の以下の部分です。
8
14
 
@@ -17,6 +23,8 @@
17
23
  そこで、そもそもとして**Viewの中に特定のActivityを持たせない**のが基本方針になります。
18
24
 
19
25
 
26
+
27
+ ## 具体的な解決策
20
28
 
21
29
  ではどうすれば良いのでしょうか???
22
30
 
@@ -70,7 +78,7 @@
70
78
 
71
79
  testView = (TestView) this.findViewById(R.id.test_view);
72
80
 
73
- // ここでデータをTextViewに付与する。
81
+ // ここでデータをTestViewに付与する。
74
82
 
75
83
  testView.updateView(data);
76
84
 
@@ -79,3 +87,7 @@
79
87
 
80
88
 
81
89
  ```
90
+
91
+
92
+
93
+ おそらく以上の説明だけだと不明な点も多々あると思うので、その都度質問頂ければと思います。