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

質問編集履歴

3

より見やすく

2016/05/08 08:47

投稿

hikaru923
hikaru923

スコア27

title CHANGED
File without changes
body CHANGED
@@ -51,8 +51,9 @@
51
51
 
52
52
  (SelectPhoto.JAVAの一部。ここからSettingPage.JAVAまでは遷移可能です。)
53
53
 
54
+ ...
54
55
  ```
55
- ・・・Intent intent = new Intent(this, SettingPage.class);
56
+ intent intent = new Intent(this, SettingPage.class);
56
57
  intent.putExtra("DATA", bmp);
57
58
  startActivityForResult(intent,0);//Bitmapデータ"bmp"を、ページ遷移しつつ渡す
58
59
  ```
@@ -60,11 +61,11 @@
60
61
 
61
62
  (SettingPage.JAVAの一部)
62
63
  ...
63
- ```ここに言語を入力
64
+ ```
64
65
  Bitmap bmp = null;//Bitmap変数"bmp"を定義する
65
66
  ```
66
67
  ...
67
- ```ここに言語を入力
68
+ ```
68
69
  Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
69
70
  bmp = intent.getParcelableExtra("DATA");
70
71
  imageView = (ImageView) findViewById(R.id.imageView) ;
@@ -84,13 +85,19 @@
84
85
 
85
86
  (Puzzle.JAVAの一部)
86
87
 
87
- ...Bitmap bmp = null;//Bitmap変数"bmp"を定義する
88
88
  ...
89
+ ```
90
+ Bitmap bmp = null;//Bitmap変数"bmp"を定義する
91
+ ```
92
+ ...
93
+ ```
89
94
  Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
90
95
  bmp = intent.getParcelableExtra("DATA");
96
+ ```
97
+
91
98
  ・・・
92
99
 
93
- (PuzzleView.JAVAの一部・・・何故か
100
+ (PuzzleView.JAVAの一部・・・何故PuzzleViewなの
94
101
  ```ここに言語を入力
95
102
  :private Puzzle puzzle;
96
103
  Resources resources = puzzle.getResources();
@@ -107,7 +114,7 @@
107
114
  ###試したこと
108
115
 
109
116
  各パズルJAVAファイル内に場所を小まめに変えて
110
- ```ここに言語を入力
117
+ ```
111
118
  Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
112
119
  bmp = intent.getParcelableExtra("DATA");
113
120
  ```
@@ -118,7 +125,7 @@
118
125
 
119
126
  デバッグ用の実機はF-10D,Androidバージョン4.2.2です。Bitmapデータ受け渡し以前はアプリは動作していました。
120
127
  受け渡す画像がちょっとでも大きいと、設定画面に遷移出来ないなどの危うい点もありますが…(他の機種を借りた時は大丈夫であろう大きさでも無理でした。ちなみに今回使用する画像は32x32程度の小さいものとします。)
121
- AndroidStudioに関しましては、SDKなど出来る限りDLしているつもりです。最新版と捉えていだいて構いません。
128
+ AndroidStudioに関しましては、SDKなど出来る限りDLしているつもりです。最新版と捉えていだいて構いません。
122
129
 
123
130
  参考にさせていただいたサイト様です。
124
131
  本当に感謝しています。

2

見やすくしました。

2016/05/08 08:47

投稿

hikaru923
hikaru923

スコア27

title CHANGED
File without changes
body CHANGED
@@ -36,42 +36,49 @@
36
36
  Caused by: android.view.InflateException: Binary XML file line #27: Error inflating class com.example.hikaru923.myapplication.PuzzleView
37
37
  (at...)
38
38
 
39
- Caused by: java.lang.reflect.InvocationTargetException
39
+ Caused by: java.lang.reflect.InvocationTargetException
40
40
  (at...)
41
41
 
42
42
  Caused by: java.lang.NullPointerException
43
43
  (at...)
44
44
 
45
-
46
45
  以上です。ここを省略したら分からない、などありましたら遠慮なくご指摘下さい。
47
46
 
48
47
 
49
48
  ###該当のソースコード(最後にGitHubでアップロードしています。
50
49
 
51
- JAVA
50
+ JAVAファイルです。
52
51
 
53
52
  (SelectPhoto.JAVAの一部。ここからSettingPage.JAVAまでは遷移可能です。)
54
53
 
54
+ ```
55
55
  ・・・Intent intent = new Intent(this, SettingPage.class);
56
56
  intent.putExtra("DATA", bmp);
57
57
  startActivityForResult(intent,0);//Bitmapデータ"bmp"を、ページ遷移しつつ渡す
58
+ ```
58
59
  ・・・
59
60
 
60
61
  (SettingPage.JAVAの一部)
61
-
62
- ...Bitmap bmp = null;//Bitmap変数"bmp"を定義する
63
62
  ...
63
+ ```ここに言語を入力
64
+ Bitmap bmp = null;//Bitmap変数"bmp"を定義する
65
+ ```
66
+ ...
67
+ ```ここに言語を入力
64
68
  Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
65
69
  bmp = intent.getParcelableExtra("DATA");
66
70
  imageView = (ImageView) findViewById(R.id.imageView) ;
67
71
  imageView.setImageBitmap(bmp);
72
+ ```
68
73
  ...
74
+ ```
69
75
  public void onClick(View v) {
70
76
  if (v == button) { //ボタンが押されたらbmpをPuzzle.JAVAに遷移しつつ渡す
71
77
  Intent intent = new Intent(this, Puzzle.class);
72
78
  intent.putExtra("DATA", bmp);
73
79
  startActivityForResult(intent,0);
74
80
  }
81
+ ```
75
82
  ・・・(何故Puzzle.JAVAを指定しているのか:setContentViewでLayoutのxmlファイルを参照していて
76
83
  メイン画面っぽいので・・・深く理解出来ていません。)
77
84
 
@@ -83,20 +90,27 @@
83
90
  bmp = intent.getParcelableExtra("DATA");
84
91
  ・・・
85
92
 
86
- (PuzzleView.JAVAの一部・・・何故か:private Puzzle puzzle;
93
+ (PuzzleView.JAVAの一部・・・何故か
94
+ ```ここに言語を入力
95
+ :private Puzzle puzzle;
87
96
  Resources resources = puzzle.getResources();
97
+ ```
88
98
  と書いてあって、Puzzleからデータを取得している感じだったので・・・)
89
99
  ・・・
100
+ ```
90
101
  public Bitmap bmp;//読み込んできたbmpを初期化、また、元のソースで指定してあったimgという型も念のため
91
102
  public Bitmap img;
92
103
  ・・・
104
+ ```
93
105
 
94
106
 
95
107
  ###試したこと
96
108
 
97
109
  各パズルJAVAファイル内に場所を小まめに変えて
110
+ ```ここに言語を入力
98
111
  Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
99
112
  bmp = intent.getParcelableExtra("DATA");
113
+ ```
100
114
  という記述をしましたが、どうも現状の記述が一番自然かなと思い
101
115
  このまま放置しています・・・。
102
116
 
@@ -104,33 +118,34 @@
104
118
 
105
119
  デバッグ用の実機はF-10D,Androidバージョン4.2.2です。Bitmapデータ受け渡し以前はアプリは動作していました。
106
120
  受け渡す画像がちょっとでも大きいと、設定画面に遷移出来ないなどの危うい点もありますが…(他の機種を借りた時は大丈夫であろう大きさでも無理でした。ちなみに今回使用する画像は32x32程度の小さいものとします。)
107
- AndroidStudioに関しましては、SDKなど出来る限りDLしているつもりです。最新版と捉えていだいて構いません。
121
+ AndroidStudioに関しましては、SDKなど出来る限りDLしているつもりです。最新版と捉えていだいて構いません。
108
122
 
109
123
  参考にさせていただいたサイト様です。
110
124
  本当に感謝しています。
111
- http://androidn.hannnari.com/link52-jiguso.html
125
+ [参照サイト様](http://androidn.hannnari.com/link52-jiguso.html)
112
126
 
113
127
 
114
- ソースコードはかなり割愛しているのでGitHubに該当部分をアップロードしました。
115
- https://github.com/hikaru923/hikaru923.git
128
+ ソースコードはかなり割愛しているので[GitHub](https://github.com/hikaru923/hikaru923.git)に該当部分をアップロードしました。
116
129
 
117
-
130
+ ちなみに
118
131
  ここを
132
+ ```
119
133
  //Bitmap img = BitmapFactory.decodeResource(resources, R.drawable.image1);
120
134
  //取り合えず以前の仕様(データ内からドロイド画像取得
121
135
  // img = puzzle.bmp;
122
136
 
123
137
  board = new PuzzleBoard(board_x, board_y, board_w, board_h, puzzle.bmp);
124
-
138
+ ```
125
139
  ↓こうすると取り敢えず動きます。
126
140
 
141
+ ```ここに言語を入力
127
142
  Bitmap img = BitmapFactory.decodeResource(resources, R.drawable.image1);
128
143
  //取り合えず以前の仕様(データ内からドロイド画像取得
129
144
 
130
145
  board = new PuzzleBoard(board_x, board_y, board_w, board_h, img);
146
+ ```
131
147
 
132
148
 
133
-
134
149
  重ね重ね申し上げますが、本当に困っています。
135
150
  質問の仕方もよく分からず、「なんで一番大事な○○の情報がないの?」と
136
151
  呆れさせてしまっているかも知れませんが、何卒ご容赦ください。

1

無駄な部分の削除

2016/05/08 07:33

投稿

hikaru923
hikaru923

スコア27

title CHANGED
File without changes
body CHANGED
@@ -109,62 +109,12 @@
109
109
  参考にさせていただいたサイト様です。
110
110
  本当に感謝しています。
111
111
  http://androidn.hannnari.com/link52-jiguso.html
112
- ###前提・実現したいこと
113
112
 
114
- 前提として、Javaに対する知識は初心者です。用語の誤用などありましたらすみません。
115
- 都度指摘していただけたら幸いです。
116
- 未経験での新卒入社から早速業務でアプリ開発をアサインされ、付け焼刃でまずは乗り切らなければならない状況です
117
113
 
118
-
119
- AndroidStudioを用いて、ギャラリー内の写真からジグソーパズルを作成するアプリを作っています。
120
- ギャラリーで選んだ画像をBitmap変数にして、
121
- ギャラリーで画像選択→分割ピース数の設定→実際のパズル操作画面→完成画面
122
- という各Activityに同一の画像を受け渡して表示する機能を実装したいと思っています。
123
- 画像選択→分割ピース数の設定
124
- までは受け渡しに成功しました。
125
-
126
- ###発生している問題・エラーメッセージ
127
-
128
- ですが、分割ピース数を設定し(…まだ分割数の変更は実装していませんが。)、この内容でパズル作成、をすると
129
- その時点でパズル画面に移行せずアプリが落ちてしまいます。
130
- ジグソーパズル部分は、ネットに公開されているソースコードを引用、改造しているのですが(URLは後述します)
131
- 複数JAVAファイルで一つのパズル部分Activityを構成している(この表現でいいのか不明ですが…)ので
132
- 画像選択→分割ピース数の設定のように、画像選択.JAVAから設定.JAVAへのBitmapデータ受け渡しのように単純なものではなく
133
- 設定.JAVAからパズル.JAVAに受け渡ししても、画面を描画するのはパズルビュー.JAVAだったり、
134
- ピース部分の移動を管轄しているのがパズルピース.JAVAだったり(それをパズルビューに読み込んでいる?)なので
135
- どこに受け取ったビットマップ画像を読み込ませるだとか、ピースをタップしたら音が鳴るだとかを記述すればいいのか不明なんです。JAVAファイルが1つであれば、少なくともどこにどこかには当てはまるはずなのですが。
136
- ```
137
- エラーメッセージ
138
- ```
139
-
140
- ###該当のソースコード
141
- ```JAVA
142
- ここにご自身が実行したソースコードを書いてください
143
- ```(画像選択.JAVAの一部)
144
- ...Intent intent = new Intent(this, SettingPage.class);
145
- intent.putExtra("DATA", bmp);
146
- startActivityForResult(intent,0);//ビットマップデータ"bmp"を、ページ遷移先に渡す
147
- ...
148
- (設定.JAVAの一部)
149
- ...Bitmap bmp = null;//ビットマップ変数"bmp"を定義する
150
- ...
151
- Intent intent = getIntent();
152
- bmp = intent.getParcelableExtra("DATA");
153
- imageView = (ImageView) findViewById(R.id.imageView) ;
154
- imageView.setImageBitmap(bmp);
155
- ...
156
-
157
-
158
- ###試したこと
159
- 課題に対してアプローチしたことを記載してください
160
-
161
- ###補足情報(言語/FW/ツール等のバージョンなど)
162
- 参考にさせていただいたサイト様です。
163
- http://androidn.hannnari.com/link52-jiguso.html
164
-
165
114
  ソースコードはかなり割愛しているのでGitHubに該当部分をアップロードしました。
166
115
  https://github.com/hikaru923/hikaru923.git
167
116
 
117
+
168
118
  ここを
169
119
  //Bitmap img = BitmapFactory.decodeResource(resources, R.drawable.image1);
170
120
  //取り合えず以前の仕様(データ内からドロイド画像取得
@@ -184,107 +134,4 @@
184
134
  重ね重ね申し上げますが、本当に困っています。
185
135
  質問の仕方もよく分からず、「なんで一番大事な○○の情報がないの?」と
186
136
  呆れさせてしまっているかも知れませんが、何卒ご容赦ください。
187
- どうかよろしくお願いいたします。
188
- ###前提・実現したいこと
189
-
190
- 前提として、Javaに対する知識は初心者です。用語の誤用、不明瞭な説明などありましたらすみません。
191
- 都度指摘していただけたら幸いです。何が分からないかも分からない状態です。
192
- 未経験での新卒で入社し、即業務でアプリ開発をアサインされ、社内に先輩エンジニアが一人のみと、
193
- どうしても自力で乗り切らなければならない状況です。
194
-
195
-
196
- AndroidStudioを用いて、ギャラリー内の写真からジグソーパズルを作成するアプリを作っています。
197
- ギャラリーで選んだ画像をBitmap変数にして、
198
- ギャラリーで画像選択→分割ピース数の設定→実際のパズル操作画面→完成画面
199
- という各Activityに同一の画像を受け渡して表示する機能を実装したいと思っています。
200
- 画像選択→分割ピース数の設定
201
- までは受け渡しに成功しました。
202
-
203
-
204
- ###発生している問題・エラーメッセージ
205
-
206
- ですが、分割ピース数を設定し(…まだ分割数の変更は実装していませんが。)、この内容でパズル作成、をすると
207
- その時点でパズル画面に移行せずアプリが落ちてしまいます。
208
- ジグソーパズル部分は、ネットに公開されているソースコードを引用、改造しているのですが(URLは後述します)
209
- 複数JAVAファイルで一つのパズル部分Activityを構成している(Puzzle.JAVA/PuzzleView.JAVA/PuzzlePiece.JAVA/PuzzleBoard.JAVAの四つです。この表現でいいのか不明ですが…)ので
210
- 画像選択→分割ピース数の設定のように、画像選択.JAVAから設定.JAVAへのBitmapデータ受け渡しのように単純なものではなく
211
- 設定.JAVAからPuzzle.JAVAに受け渡ししても、画面を描画するのはPuzzleView.JAVAだったり、
212
- ピース部分の移動を管轄するのがPuzzlePiece.JAVAだったり(そのデータをPuzzleViewに読み込んでいる?)なので
213
- どこに、受け取ったビットマップ画像を読み込ませるだとか、ピースをタップしたら音が鳴るだとか、を記述すればいいのか不明なんです。JAVAファイルが1つであれば、少なくともどこかに要素が当てはまるはずなのですが。
214
-
215
-
216
- エラーメッセージ
217
- LogCatより
218
-
219
- 05-06 18:52:05.778 19081-19081/com.example.hikaru923.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
220
- java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.hikaru923.myapplication/com.example.hikaru923.myapplication.Puzzle}: android.view.InflateException: Binary XML file line #27: Error inflating class com.example.hikaru923.myapplication.PuzzleView
221
- (以下at...の羅列)
222
- Caused by: android.view.InflateException: Binary XML file line #27: Error inflating class com.example.hikaru923.myapplication.PuzzleView
223
- (at...)
224
- Caused by: java.lang.reflect.InvocationTargetException
225
- (at...)
226
- Caused by: java.lang.NullPointerException
227
- (at...)
228
-
229
- 以上です。ここを省略したら分からない、などありましたら遠慮なくご指摘下さい。
230
-
231
-
232
- ###該当のソースコード
233
-
234
- JAVA
235
-
236
- (SelectPhoto.JAVAの一部。ここからSettingPage.JAVAまでは遷移可能です。)
237
-
238
- ・・・Intent intent = new Intent(this, SettingPage.class);
239
- intent.putExtra("DATA", bmp);
240
- startActivityForResult(intent,0);//Bitmapデータ"bmp"を、ページ遷移しつつ渡す
241
- ・・・
242
-
243
- (SettingPage.JAVAの一部)
244
-
245
- ...Bitmap bmp = null;//Bitmap変数"bmp"を定義する
246
- ...
247
- Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
248
- bmp = intent.getParcelableExtra("DATA");
249
- imageView = (ImageView) findViewById(R.id.imageView) ;
250
- imageView.setImageBitmap(bmp);
251
- ...
252
- public void onClick(View v) {
253
- if (v == button) { //ボタンが押されたらbmpをPuzzle.JAVAに遷移しつつ渡す
254
- Intent intent = new Intent(this, Puzzle.class);
255
- intent.putExtra("DATA", bmp);
256
- startActivityForResult(intent,0);
257
- }
258
- ・・・(何故Puzzle.JAVAを指定しているのかですが、setContentViewでLayoutのxmlファイルを参照していて、メイン画面らしいので・・・深く理解出来ていません。)
259
-
260
- (Puzzle.JAVAの一部)
261
-
262
- ...Bitmap bmp = null;//Bitmap変数"bmp"を定義する
263
- ...
264
- Intent intent = getIntent();//インテントからデータの受け取り、変数に代入
265
- bmp = intent.getParcelableExtra("DATA");
266
- ・・・
267
-
268
- (PuzzleView.JAVAの一部・・・何故か:Resources resources = puzzle.getResources();と書いてあって、Puzzleからデータを取得している感じだったので・・・)
269
- ・・・
270
- public Bitmap bmp;//読み込んできたbmpを初期化、また、元のソースで指定してあったimgも念のため
271
- public Bitmap img;
272
- ・・・
273
-
274
-
275
-
276
-
277
- ###試したこと
278
-
279
- 各パズルJAVAファイルに場所を小まめに変えて同様の記述をしましたが、どうも現状の記述が一番自然かなと思い
280
- このまま放置しています・・・。
281
-
282
- ###補足情報(言語/FW/ツール等のバージョンなど)
283
-
284
- デバッグ用の実機はF-10D,Androidバージョン4.2.2です。Bitmapデータ受け渡し以前はアプリは動作していました。
285
- 受け渡す画像がちょっとでも大きいと、設定画面に遷移出来ないなどの危うい点もありますが…(他の機種を借りた時は大丈夫であろう大きさでも無理でした。ちなみに今回使用する画像は32x32程度の小さいものとします。)
286
- AndroidStudioに関しましては、SDKなど出来る限りDLしているつもりです。最新版と捉えていただいて構いません。
287
-
288
- 参考にさせていただいたサイト様です。
289
- 本当に感謝しています。
290
- http://androidn.hannnari.com/link52-jiguso.html
137
+ どうかよろしくお願いいたします。