ある画像ビューを別の画像ビューに配置し、単一の画像にしてSDカードに保存するアプリケーションを作成しています。イメージを作成して SD カードに保存するアプリケーションを実行しましたが、このイメージは空白です。SD カードに保存されている 1 つの画像に両方の画像が表示されません。
これが私のコードです。
@SuppressWarnings("deprecation")
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ImageView image2 = (ImageView) findViewById(R.id.ImageViewTwo);
final ImageView image = (ImageView) findViewById(R.id.ImageViewOne);
mTempDir = Environment.getExternalStorageDirectory()+"/"+"TestTemp";
File mtempFile = new File(mTempDir);
if(!mtempFile.exists())
{
mtempFile.mkdir();
}
mSaveImageName = "Test.png";
mBackGround = Bitmap.createBitmap(100 , 100 ,Bitmap.Config.ARGB_8888);
image2.buildDrawingCache();
mBackImage = image2.getDrawingCache();
mBackImage = Bitmap.createBitmap(100 , 100 ,Bitmap.Config.ARGB_8888);
image.buildDrawingCache();
mTopImage = image.getDrawingCache();
mTopImage = Bitmap.createBitmap(100 , 100 , Bitmap.Config.ARGB_8888);
mCanvas = new Canvas(mBackGround);
//mCanvas.drawBitmap(mBackImage, (mCanvas.getWidth() / 2), 0, null);
mCanvas.drawBitmap(mBackImage ,0f , 0f , null);
mCanvas.drawBitmap(mTopImage, 12f , 12f , null);
try
{
mBitmapDrawable = new BitmapDrawable(mBackGround);
Bitmap mNewSaving = mBitmapDrawable .getBitmap();
String ftoSave = mTempDir + mSaveImageName;
File mFile = new File(ftoSave);
mFileOutputStream = new FileOutputStream(mFile);
mNewSaving.compress(CompressFormat.PNG, 95 , mFileOutputStream);
mFileOutputStream.flush();
mFileOutputStream.close();
}
catch(FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.i(TAG, "Image Created");
}