2012-03-19 105 views
0

我正在開發播放視頻應用程序並拍攝運行視頻的屏幕截圖,並在下一個活動中顯示屏幕截圖,我正在播放視頻並截取屏幕截圖,而且我無法在下一個活動中顯示屏幕截圖請檢查我的代碼並給我更改。將屏幕截圖從一個活動顯示到另一個活動

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); 
    } 
} 
+0

將位圖設置爲靜態或將位圖轉換爲字節數組,然後使用捆綁包傳遞該字節數組 – 2012-03-19 07:30:29

回答

0

你可以試試下面的代碼,讓我知道你是否修復它。

發送對象

這是將對象從一個發送到其他類的代碼。發送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");// 

類型轉換需要

1

這裏你的 「位圖」 的對象是一個字符串。 並且您正在將字符串對象傳遞給下一個活動。 這就是爲什麼你無法在ImageView截圖中設置圖像的原因。

相關問題