显示从一个活动到另一个活动的屏幕截图

时间:2012-03-19 07:22:26

标签: android video android-activity screenshot bundle

我正在开发播放视频应用程序并截取运行视频的屏幕截图并在下一个活动中显示屏幕截图,我正在播放视频并截屏,我无法在下一个活动中显示截图,请检查我的代码并给我更改。

    BitmapDrawable bitmapDrawable = new BitmapDrawable(bm);
        image = (ImageView) findViewById(R.id.ImageView01);
     //   image.setBackgroundDrawable(bitmapDrawable);

        String bitmap = image.toString();

        System.out.println("Image getting++++++ : " + bitmap);

        Intent intent = new Intent(VideoDemo.this, ScreenshotView.class);
        intent.putExtra("BitmapImage", bitmap);

        startActivity(intent);
public class ScreenshotView extends Activity 
{       private String filename;
        private ImageButton back;


    private ImageView screenshot;

  @Override
  public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
         requestWindowFeature(Window.FEATURE_NO_TITLE);
         setContentView(R.layout.screenshot);

         screenshot =(ImageView)findViewById(R.id.screen);
         back = (ImageButton)findViewById(R.id.backbutton);
         back.setOnClickListener(new View.OnClickListener() {

            public void onClick(View arg0) {
                finish();
            }
         });

          System.gc();
          Intent i = getIntent();
          Bitmap bitmap = (Bitmap) i.getParcelableExtra("BitmapImage");
       screenshot.setImageBitmap(bitmap);
   }
}

2 个答案:

答案 0 :(得分:1)

这里你的“位图”对象是一个字符串。 并且您将字符串对象传递给下一个活动。 这就是为什么,你无法在ImageView屏幕截图中设置图像。

答案 1 :(得分:0)

你可以试试下面的代码并知道你是否修好了它。

发送对象

以下是将Object从一个类发送到另一个类的代码。发送Object的一个重要事情是类应该实现Serializable类。

以下红色文本应该相同。

//MainActivity.java
Intent i = new Intent(MainActivity.this,startActivity.class);
ObjectClassName object = new ObjectClassName();
i.putExtra("THIS", Object);

接收对象

// startActivity.java
Intent i = getIntent();
ObjectClassName obj = (ObjectClassName) getIntent().getSerializableExtra("THIS");// 

需要TypeCasting