Android установил растровое изображение ImageView в качестве источника проблемы - PullRequest
0 голосов
/ 25 октября 2011

У меня небольшая проблема с настройкой растрового изображения в качестве источника ImageView. Вот код, который я использую:

 BitmapFactory.Options options = new BitmapFactory.Options();
    options.inTempStorage = new byte[16*1024];

    String path = Environment.getExternalStorageDirectory()+"/Stampii/"+objectId+".png";
    Log.i("","path : "+path);

    b = BitmapFactory.decodeFile(path,options);
    if(b==null){
       Log.i("","Bitmap is null");
    }

viewFlow = (ViewFlow) findViewById(R.id.viewflow);
        viewFlow.setAdapter(new ImageAdapter(Cards.this, b),position);

вот как я сохраняю изображение:

File myDir=new File("/sdcard/Stampii");
                    myDir.mkdirs();

                    String filename = objectId+".png";
                    File file = new File(myDir, filename);
                    FileOutputStream fos;


                    fos = new FileOutputStream(file);
                    fos.write(mediaCardBuffer);
                    fos.flush();
                    fos.close();

ImageAdapter:

ublic class ImageAdapter extends BaseAdapter {

private LayoutInflater mInflater;

private Bitmap bitmap;

public ImageAdapter(Context context, Bitmap image) {
    mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    bitmap = image;
}

@Override
public int getCount() {
    return 0;
}

@Override
public Object getItem(int position) {
    return position;
}

@Override
public long getItemId(int position) {
    return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.image_item, null);
    }
    ((ImageView) convertView.findViewById(R.id.imgView)).setImageBitmap(bitmap);
    return convertView;
}}

Изображение на SDCard, я вижу его, и имя и путь указаны правильно. Это просто не появляется. Есть идеи, где моя ошибка?

1 Ответ

3 голосов
/ 25 октября 2011

Я полагаю, что getView никогда не вызывается, потому что ваш адаптер возвращает 0 элементов. Попробуйте вернуть счетчик 1 или столько экземпляров того растрового изображения, которое вы хотите показать.

...