私はAndroidが初めてで、MSSQLから画像を取得して背景として設定しようとしています。
CallableStatement proc = null;
String temp2 ="{ call AndroidDB.dbo.getStocks("+ temp +")}";
proc = MainActivity.conn.prepareCall(temp2);
ResultSet rs = proc.executeQuery();
Bitmap bitmap= null;
byte[] blob =null;
for (int i = 0,j=0; rs.next(); i++ ) {
if(i%3==0){
layout_stocks_h.add(new LinearLayout(this));
(layout_stocks_h.get(j)).setOrientation(LinearLayout.HORIZONTAL);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT); // Verbose!
lp.weight = 1.0f;
(layout_stocks_h.get(j)).setLayoutParams(lp);
layout_stocks_v.addView((layout_stocks_h.get(j)));
(layout_stocks_h.get(j)).setId(200+(j));
j++;
}
imagebutton_stocks.add(new ImageButton(this));
blob = rs.getBytes("stokresim");
ByteArrayInputStream imageStream = new ByteArrayInputStream(blob);
bitmap = BitmapFactory.decodeStream(imageStream);
imagebutton_stocks.get(i).setImageBitmap(bitmap);
imagebutton_stocks.get(i).setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
layout_stocks_h.get(j-1).addView(imagebutton_stocks.get(i));
imagebutton_stocks.get(i).setId(250+i);
imagebutton_stocks.get(i).setOnClickListener(this);
noOfStocks = i;
私も使用しようとしました:
bitmap = BitmapFactory.decodeByteArray(blob , 0, blob.length);
ただし、何も機能しません。私の手順は正しく機能し、正しい数のボタンを作成しますが、画像はありません。
イメージファイルをイメージとしてMSSQLに保存し、varbinary(MAX)を試しました
前もって感謝します