2

SDカードからグリッドビューに画像のサムネイルを表示しています。画像をクリックすると、新しいアクティビティを開始して画像をフルスクリーンで表示したいと思います。しかし、アクティビティが開始されないという問題に直面していますか? 私は自分のコードを投稿しています.logcatは、誰かが助けてくれることを願っています.

getFromSdcard(parent, child);
    for (int i = 0; i < f.size(); i++) {
        Cursor desc = sql.fetchCatImageDesc(f.get(i).substring(
                f.get(i).lastIndexOf("/") + 1));
        while (desc.moveToNext()) {
            itemname = desc.getString(desc
                    .getColumnIndexOrThrow(Image_Sql.ITEM_NAME));
        }
        image.add(new Image(bit.get(i), itemname));
    }
    adapter = new MyAdapter(this.getActivity(), image);
    gv.setAdapter(adapter);
gv.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // TODO Auto-generated method stub
            Cursor desc = sql.fetchCatImageDesc(compare.get(arg2));
            while (desc.moveToNext()) {
                description = desc.getString(desc
                        .getColumnIndexOrThrow(Image_Sql.IMAGE_DESCRIPTION));
            }

            Intent intent= new Intent(getActivity(),FullImageActivity.class);
            Bitmap bitmap = bit.get(arg2);
            intent.putExtra("image", bitmap);
            Bundle bundle = new Bundle();
            bundle.putString("title", compare.get(arg2));
            bundle.putString("desc", description);
            bundle.putString("cat", parent);
            bundle.putString("subcat", child);
            intent.putExtras(bundle);
            startActivity(intent);

        }
    });

}


public void getFromSdcard(String parent, String child) {
    File file;

    try {
        File[] listFile;
        if (!child.equals("")) {
            file = new File(
                    android.os.Environment.getExternalStorageDirectory(),
                    "ldapps/admin/" + parent + "/" + child + "/.NoMedia");
        } else {
            file = new File(
                    android.os.Environment.getExternalStorageDirectory(),
                    "ldapps/admin/" + parent + "/.NoMedia");
        }
        Bitmap bitmap;
        Cursor image = sql.fetchCategorySubImage(parent, child);
        while (image.moveToNext()) {

            String name = image.getString(image
                    .getColumnIndexOrThrow(Image_Sql.IMAGE_NAME));
            compare.add(name);

        }

        if (file.isDirectory()) {
            listFile = file.listFiles();

            for (int i = 0; i < listFile.length; i++) {

                for (int j = 0; j < compare.size(); j++) {

                    if (compare
                            .get(j)
                            .toString()
                            .equals(listFile[i].getAbsolutePath()
                                    .substring(
                                            listFile[i].getAbsolutePath()
                                                    .lastIndexOf("/") + 1))) {

                        f.add(listFile[i].getAbsolutePath());
                        bitmap = convertBitmap(listFile[i]
                                .getAbsolutePath());

                        bit.add(bitmap);

                    }

                }

            }
        }
    } catch (Exception e) {
        Dialog d = new Dialog(getActivity());
        TextView tv = new TextView(getActivity());
        tv.setText(e.toString());
        d.setTitle(e.toString());
        d.setContentView(tv);
        d.show();
    }
}

そしてLogcatはこれです....

09-04 06:04:37.843: E/JavaBinder(2833): !!! FAILED BINDER TRANSACTION !!!
4

0 に答える 0