回答編集履歴

2

コメントの質問に対しての答えを追記

2015/08/09 10:21

投稿

shiolier
shiolier

スコア1156

test CHANGED
@@ -51,3 +51,49 @@
51
51
  intent.putExtra(EXTRA_MISSION, missionStr);
52
52
 
53
53
  ```
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ ---
62
+
63
+
64
+
65
+ ---
66
+
67
+
68
+
69
+ **Activityの遷移には、必ずIntentが必要なのか?**
70
+
71
+ という質問に関してですが、答えは**YES**です。
72
+
73
+
74
+
75
+ 1つの画面 = 1つのActivity
76
+
77
+ というようにしている場合、必ず`Intent`を使って遷移させます。
78
+
79
+ Intentを使いたくないという場合は、
80
+
81
+ 1つの画面 = 1つのActivity
82
+
83
+ という設計を見直す必要があるかと思います。
84
+
85
+
86
+
87
+ 方法としては、
88
+
89
+ `Fragment`を使う
90
+
91
+ `Activity#setContentView`を使う
92
+
93
+ などがあります。
94
+
95
+ ただ、前者はいいですが、後者はおすすめしません。ソースコードがぐちゃぐちゃになったり等、あまり良いことがないので。
96
+
97
+
98
+
99
+ どちらにしろ、ソースコードは`Intent`を使うより遥か複雑になります。

1

追加

2015/08/09 10:21

投稿

shiolier
shiolier

スコア1156

test CHANGED
@@ -28,6 +28,10 @@
28
28
 
29
29
  // AND
30
30
 
31
+ if ("".equals(mission)) {
32
+
33
+ // AND
34
+
31
35
  intent.putExtra(EXTRA_MISSION, mission);
32
36
 
33
37
  ```
@@ -40,6 +44,10 @@
40
44
 
41
45
 
42
46
 
47
+ if ("".equals(missionStr)) {
48
+
49
+
50
+
43
51
  intent.putExtra(EXTRA_MISSION, missionStr);
44
52
 
45
53
  ```