2

我正在编写一个用于教育目的的应用程序,其中用户从相机拍摄照片并通过电子邮件发送。我写了几乎所有的代码,除了代码 whi 但我不知道怎么做,因为我正在学习 android。这是我的代码,我应该在这段代码中添加什么:

package com.umer.practice2;

 import java.io.IOException;

 import android.app.Activity;
 import android.content.Intent;
 import android.graphics.Bitmap;
 import android.os.Bundle;
 import android.view.View;
 import android.widget.Button;
 import android.widget.EditText;
 import android.widget.ImageButton;
 import android.widget.ImageView;
 import android.widget.TextView;

 public class SendPhoto extends Activity implements View.OnClickListener{

TextView tv1,tv2;
EditText e1,e2;
ImageView pi;
ImageButton pb;
Button pb1,pb2;
Intent photo;
Bitmap bmp;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.sendphoto);

    pb1.setOnClickListener(this);
    pb2.setOnClickListener(this);

    pb.setOnClickListener(this);
    initializeView();
}

private void initializeView() {
    // TODO Auto-generated method stub
    tv1= (TextView) findViewById(R.id.pt1);
    tv2= (TextView) findViewById(R.id.pt2);

    e1= (EditText) findViewById(R.id.pe1);
    e2= (EditText) findViewById(R.id.pe2);

    pi= (ImageView) findViewById(R.id.p1);
    pb= (ImageButton) findViewById(R.id.pib2);

    pb1= (Button) findViewById(R.id.pbut1);
    pb2= (Button) findViewById(R.id.pbut2);
}

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub

    switch(v.getId())
    {
    case R.id.pbut1:
        String email[]={e2.getText().toString()};

        Intent emailIntent= new Intent(android.content.Intent.ACTION_SEND);
        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, email);
        emailIntent.setType("image/jpeg");
        startActivityForResult(emailIntent, 1);
        break;
    case R.id.pib2:
        photo= new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(photo,2); 
        break;
    case R.id.pbut2:
        try {
            getApplicationContext().setWallpaper(bmp);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        break;
    }
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);

    Bundle extras = data.getExtras();
    bmp = (Bitmap) extras.get("data");
    pi.setImageBitmap(bmp);
}

}
4

1 回答 1

1

在您的 onActivityResult 方法中,您应该将位图保存到 SD 卡上的文件中,接下来您应该将文件附加到电子邮件意图中。

如何将图像保存到 SD 卡上的文件 如何将位图保存到手机的图库中?

如何将文件附加到电子邮件意图: 尝试将文件从 SD 卡附加到电子邮件

于 2012-08-07T17:36:03.777 回答