2016-07-01 7 views
0

でGmailに既存のイメージを添付すると、このコードから、私のコードここ 、Gmailに既存のイメージを添付しながら、私はいくつかの問題に直面していますXamarin

#region Attached Screenshot 
     _imageView = FindViewById<ImageView>(Resource.Id.imageView); 
     _imageView.Click += delegate 
     { 
      Intent = new Intent(); 
      Intent.SetType("image/*"); 
      Intent.SetAction(Intent.ActionGetContent); 
      Intent.PutExtra("return-data", true); 
      StartActivityForResult(
       Intent.CreateChooser(Intent, "Select Picture"), PICK_FROM_GALLERY); 
     }; 
#endregion 

ですどのようにこのコードにその画像を添付する場合は、

#region SendMail 

     Button sendButton = FindViewById<Button>(Resource.Id.button); 

     sendButton.Click += delegate 
     { 
      var email = new Intent(Android.Content.Intent.ActionSend); 
      email.PutExtra(Android.Content.Intent.ExtraEmail, 
      new string[] { "[email protected]", "[email protected]" }); 
      email.PutExtra(Android.Content.Intent.ExtraCc, 
      new string[] { "[email protected]" }); 
      email.PutExtra(Android.Content.Intent.ExtraSubject, "Hello Email"); 
      email.PutExtra(Android.Content.Intent.ExtraText, "Hello from Mobility Team"); 

      email.SetType("message/rfc822"); 
      StartActivity(email); 
     }; 

#endregion 

私は長い時間からこれをトリング午前、私のコードを示唆して はあなた

答えて

0

ありがとうございください。ユーザーがIntent.ExtraStreamコンテンツ用に選択したアイテムのUriを提供するResult.Dataを使用してください。

protected override void OnCreate(Bundle savedInstanceState) 
{ 
    base.OnCreate(savedInstanceState); 
    SetContentView(Resource.Layout.Main); 
    Button button = FindViewById<Button>(Resource.Id.myButton); 
    button.Click += delegate { 
     Intent = new Intent(); 
     Intent.SetType("image/*"); 
     Intent.SetAction(Intent.ActionGetContent); 
     StartActivityForResult(Intent.CreateChooser(Intent, "Select Picture"), 99); 
    }; 
} 

protected override void OnActivityResult(int requestCode, Result resultCode, Intent data) 
{ 
    base.OnActivityResult(requestCode, resultCode, data); 
    if (requestCode == 99) 
    { 
     var mailIntent = new Intent(Intent.ActionSend); 
     mailIntent.SetType("message/rfc822"); 
     mailIntent.PutExtra(Intent.ExtraEmail, new string[] { "[email protected]" }); 
     mailIntent.PutExtra(Intent.ExtraSubject, "Email Subject"); 
     mailIntent.PutExtra(Intent.ExtraText, "Email Body"); 
     mailIntent.PutExtra(Intent.ExtraStream, data.Data); 
     StartActivity(mailIntent); 
    } 
} 
関連する問題