2 つのボタンと ImageView があるアクティビティがあります。1 つのボタンは、電話のカメラ アプリケーションから画像を取得し、それを ImageView に設定することです。もう 1 つのボタンは、その画像をホーム画面の壁紙として設定することです。この画像を ImageView から壁紙に設定する方法のコードが必要ですか? ??????
質問する
10116 次
3 に答える
14
ステップ 1: ImageView に添付された画像を取得します。
設定 2:その画像を壁紙として設定します。
ステップ3:AndroidManifest.xml
壁紙を設定する権限を追加してください!
ステップ1については、この回答を確認してください!
imageView.buildDrawingCache();
Bitmap bmap = imageView.getDrawingCache();
ステップ 2 の場合:
WallpaperManager m=WallpaperManager.getInstance(this);
try {
m.setBitmap(bmap);
} catch (IOException e) {
e.printStackTrace();
}
ステップ 3 の場合: この権限も含めます。
<uses-permission android:name="android.permission.SET_WALLPAPER" />
それがうまくいかない場合は教えてください!
于 2013-03-15T03:48:50.617 に答える
5
これは 2 つの部分で答えることができます。
最初の設定は次のWallPaper
とおりです。
WallpaperManager wallManager = WallpaperManager.getInstance(getApplicationContext());
try {
wallManager.setBitmap(bmpImg);
Toast.makeText(MainActivity.this, "Wallpaper Set Successfully!!", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
Toast.makeText(MainActivity.this, "Setting WallPaper Failed!!", Toast.LENGTH_SHORT).show();
}
2 番目の部分はオプションであり、ビットマップを に設定していない場合にのみ表示されますImageView
。その場合、 をセットアップする前に、この手順を実行する必要がありますWallPaper
。
Bitmap bmpImg = ((BitmapDrawable)yourImageView.getDrawable()).getBitmap();
于 2013-03-15T03:42:54.103 に答える
0
セットの壁紙:
Bitmap bitmapImg = ((BitmapDrawable) YourImageView.getDrawable()).getBitmap();
WallpaperManager wallManager = WallpaperManager.getInstance(getApplicationContext());
try {
wallManager.clear();
wallManager.setBitmap(bitmapImg);
} catch (IOException ex) {
}
マニフェスト ファイルに 2 つのアクセス許可を追加する必要があります
1. <uses-permission android:name="android.permission.SET_WALLPAPER" />
2. <uses-permission android:name="android.permission.WRITE_SETTINGS" />
于 2015-12-22T13:27:02.413 に答える