質問編集履歴

1

Javaコードを追記しました

2015/03/01 15:22

投稿

phone0125
phone0125

スコア40

test CHANGED
File without changes
test CHANGED
@@ -1,14 +1,14 @@
1
1
  Androidアプリ開発初心者です
2
2
 
3
- DBからデータを読んで自作アダプターを用いたListViewに表示しようとしていますが,実行時エラーが出ます.
3
+ DBからデータを読んで自作アダプターを用いたListViewに表示しようとしていますが,実行時エラーで当該アクティビティに遷移した途端に落ちます.
4
4
 
5
5
  コメントアウトする位置を変えたりして原因を探っていますが,いまいちよくわかりません.
6
6
 
7
+
8
+
7
9
  以下LogCatです
8
10
 
9
-
10
-
11
- ```lang-<ここに言語を入力
11
+ ```lang-<LogCat
12
12
 
13
13
  E/AndroidRuntime(19527):
14
14
 
@@ -78,6 +78,110 @@
78
78
 
79
79
 
80
80
 
81
+ このときのHogeActivityの`onCreate`は次の通りです
82
+
83
+ ```lang-Java
84
+
85
+ private DataBaseHelper helper = null;
86
+
87
+ private String hoge1 = "1001";
88
+
89
+ private String hoge2 = "101";
90
+
91
+ private String[] hoge4s;
92
+
93
+ private String[] hoge3s;
94
+
95
+ private String[] hoge5s;
96
+
97
+
98
+
99
+ @Override
100
+
101
+ protected void onCreate(Bundle savedInstanceState) {
102
+
103
+ super.onCreate(savedInstanceState);
104
+
105
+ setContentView(R.layout.hoge_activity);
106
+
107
+
108
+
109
+ helper = new DataBaseHelper(this);
110
+
111
+
112
+
113
+ SQLiteDatabase db = helper.getReadableDatabase();
114
+
115
+ String[] cols = {"id", "hoge1", "hoge2", "hoge3", "hoge4", "hoge5", "hoge6"};
116
+
117
+ String[] params = {hoge1, hoge2};
118
+
119
+ /*
120
+
121
+ Cursor cs = db.query("tablehoge", cols, "hoge1 = ? and hoge2 = ?", params, null, null, "id desc", null);
122
+
123
+ if (cs.moveToFirst()) {
124
+
125
+ int i = 0;
126
+
127
+ do {
128
+
129
+ hoge4s[i] = cs.getString(4);
130
+
131
+ hoge3s[i] = cs.getString(3);
132
+
133
+ hoge5s[i] = cs.getString(5);
134
+
135
+ i++;
136
+
137
+ }while(cs.moveToNext());
138
+
139
+ }
140
+
141
+
142
+
143
+ // 配列の内容をListItemに詰め替え
144
+
145
+ ArrayList<HogeListItem> data = new ArrayList<HogeListItem>();
146
+
147
+ for (int i = 0; i < hoge4s.length; i++){
148
+
149
+ HogeListItem item = new HogeListItem();
150
+
151
+ item.setId_usrmsg((new Random()).nextLong());
152
+
153
+ item.setUsrmsg(hoge4s[i]);
154
+
155
+ item.setDate(hoge3s[i]);
156
+
157
+ item.setGoodnum(hoge5s[i]);
158
+
159
+ data.add(item);
160
+
161
+ }
162
+
163
+
164
+
165
+ // ListItem配列とレイアウトとを関連付け
166
+
167
+ ListAdapterUsrMsg adapter = new ListAdapterHoge(this, data, R.layout.hoge_listitem);
168
+
169
+ ListView list = (ListView)findViewById(R.id.lv_hoge);
170
+
171
+ list.setAdapter(adapter);
172
+
173
+ */
174
+
175
+ ```
176
+
177
+
178
+
179
+ エラー文中の`HogeActivity.java:32`は`SQLiteDatabase db = helper.getReadableDatabase();`を指しています.
180
+
181
+
182
+
183
+
184
+
81
185
  なにが問題なのでしょうか?
82
186
 
83
187
  よろしくお願いいたします