1

Intent複数の画像を添付ファイルとして電子メールに送信するクラスがあります。したがって、すべて正常に動作します。唯一の問題は、画像の数が 20 を超える場合、Intent クラスが特定のメール クライアントを開くのに時間がかかることです。その間、進行状況バーをユーザーに表示したいと思います。誰でも私がこれを解決するのを手伝ってくれます。複数の画像を送信するための私のコードを以下に示します。

ArrayList<Uri> uris = new ArrayList<Uri>();

for(int i = 0; i< NoteManager.getSingletonObject().getNoteItemCount(); i++)
{
    File imageFile = new File(m_ShareDir, NoteManager.getSingletonObject().getNote(i));
    ContentValues values = new ContentValues(2);
    values.put(MediaStore.Images.Media.MIME_TYPE, "image/png");
    values.put(MediaStore.Images.Media.DATA, imageFile.getAbsolutePath());

    Uri  imageUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);  

    uris.add(imageUri);
}

Intent intent = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE);
intent.setType("image/png");
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
startActivity(Intent.createChooser(intent, getResources().getString(R.string.share_send_text)));
4

2 に答える 2

2

お役に立てますように

ProgressDialog pd = ProgressDialog.show(SetFrames.this,"Loading", "Please 

Wait...",true);
           new Thread() {
               public void run() {
               try {
                //do your process
               }catch(Exception e)
               {
               }
               handler.sendEmptyMessage(0);
               pd.dismiss();
               }

               }.start();

private Handler handler = new Handler() {
        public void handleMessage(Message msg) {

        }
        };
于 2012-09-05T07:10:12.217 に答える
0

これを試して。 チュートリアルそして、ここは進捗項目を1つずつ示す良い例だと思います。
楽しみ...

于 2012-09-05T07:10:15.253 に答える