SDカードを備えたデバイスを持っていないため、現在の画面のスクリーンショット(ボタンを押した後)を撮り、ギャラリーに保存するコードを知りたいです。したがって、デフォルトのギャラリーに保存します。ありがとうございました
質問する
21068 次
4 に答える
11
Bitmap bitmap;
View v1 = findViewById(R.id.rlid);// get ur root view id
v1.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(false);
これでうまくいくはずです。
保存用
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 40, bytes);
File f = new File(Environment.getExternalStorageDirectory()
+ File.separator + "test.jpg")
f.createNewFile();
FileOutputStream fo = new FileOutputStream(f);
fo.write(bytes.toByteArray());
fo.close();
于 2013-03-07T16:26:10.033 に答える
5
View v1 = L1.getRootView();
v1.setDrawingCacheEnabled(true);
Bitmap bm = v1.getDrawingCache();
BitmapDrawable bitmapDrawable = new BitmapDrawable(bm);
image = (ImageView) findViewById(R.id.screenshots);
image.setBackgroundDrawable(bitmapDrawable);
完全なソース コードについては、以下のブログを参照してください。
http://amitandroid.blogspot.in/2013/02/android-taking-screen-shots-through-code.html
ビットマップを保存するには、以下のリンクを参照してください
于 2013-03-07T16:31:28.290 に答える
0
コメントしたよう323go
に、デバイスがルート化されていない限り、これは不可能です。
しかし、そうであれば、 monkeyrunnerまたはエミュレーターを使用している場合は、良い仕事かもしれません。
于 2013-03-07T16:25:38.250 に答える