Это было дней в настоящее время, пытаясь понять, как работает эта функция ... Я искал его в переполнение стека слишком, конечно Downloading and setting a wallpaper пытался, но получил ошибку doInBackground. и многие другие «кажется законным» ответом, который я пробовал. но в конце концов, я до сих пор понятия не имел, как изменить мойУстановить обои из URL изображения
final String url2 = "http://icons.iconarchive.com/icons/3xhumed/mega-games-pack-26/256/Call-of-Duty-World-at-War-5-icon.png";
displaynya.setImageUrl(url2);
будет использоваться, когда я называю его в моей кнопки
case R.id.BTsetWalp:
WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
try {
myWallpaperManager.setResource(// what should i do with this?);
Так запутанным .. последние дни, я пытаясь использовать только изображение, которое было сохранено в приложениях, используя этот случай 2
case R.id.ivwall02:
displaynya.setImageResource(R.drawable.a2);
setWallp = R.drawable.a2;
break;
Этот код работает. но если я его использую, размер моего приложения станет огромным, потому что все огромное изображение для обоев будет храниться в приложениях. поэтому я хочу использовать метод в случае 1 (сначала загружаю изображение, а затем устанавливаю его на обои), но я застрял там.
===================== ====================================
EDIT 2, обновил свой код до сих пор
Вот полный код
public class CopyOfGallery extends Activity implements View.OnClickListener {
private SmartImageView displaynya;
Button bWalp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.gallery);
bWalp = (Button) findViewById(R.id.BTsetWalp);
displaynya = (SmartImageView)findViewById(R.id.iVDisplay);
ImageView image01 = (ImageView) findViewById(R.id.ivwall01);
ImageView image02 = (ImageView) findViewById(R.id.ivwall02);
image01.setOnClickListener(this);
image02.setOnClickListener(this);
bWalp.setOnClickListener(this);
}
@Override
public void onClick(View vImage) {
// TODO Auto-generated method stub
switch (vImage.getId()){
case R.id.ivwall01:
final String url1 ="http://i100.photobucket.com/albums/m21/keitaro3660/komari/Komari02/km_happy.jpg" ;
displaynya.setImageUrl(url1);
break;
case R.id.ivwall02:
final String url2 ="http://i100.photobucket.com/albums/m21/keitaro3660/komari/Komari02/km_awkward.jpg" ;
displaynya.setImageUrl(url2);
break;
case R.id.BTsetWalp:
// get the Image to as Bitmap
Bitmap bitmap = BitmapFactory.decodeStream(getResources().openRawResource(R.id.iVDisplay));
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
// get the height and width of screen
int height = metrics.heightPixels;
int width = metrics.widthPixels;
WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
try {
wallpaperManager.setBitmap(bitmap);
wallpaperManager.suggestDesiredDimensions(width, height);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
за
Bitmap bitmap = BitmapFactory.decodeStream(getResources().openRawResource(R.id.iVDisplay));
Эта функция предназначена для извлечения любого изображения, которое показано в моем файле R.id.iVDisplay, а не ??? именно то, что мне нужно. но почему он потерпел крушение? : '(
вот мой журнал
01-08 23: 39: 51,529: E/AndroidRuntime (22803): FATAL ИСКЛЮЧЕНИЕ: главный
01-08 23: 39: 51,529: E/AndroidRuntime (22803): java.lang.NullPointerException
01-08 23: 39: 51,529: Е/AndroidRuntime (22803): в android.content.res.Resources.openRawResource (Resources.java:951)
01-08 23: 39: 51,529: Е/AndroidRuntime (22803): в android.content.res.Resources.openRawResource (Resources.java:927)
01-08 23: 39: 51,529: Е/AndroidRuntime (22803): at preff.Gallery.onClick (Gallery.java:355) 01-08 23: 39: 51.529: E/AndroidRuntime (22803): at android.view.View.performClick (View.java: 3526)
01-08 23: 39: 51,529: Е/AndroidRuntime (22803): в android.view.View $ PerformClick.run (View.java:14133)
missplaceme nt или мне что-то не хватает?:(
«Загрузка и установка обои пробовал, но получил ошибку doInBackground.» Какую ошибку вы получаете? –
Пройтись это https://github.com/loopj/android-smart-image-view –
wow очень быстрая реакция: D @Brontok hmmm ... Я думаю, что «AsyncTask # 5» ошибка, когда я пытаюсь нажать на изображение. Это вчера, и я уже меняю код. .. wow cool link! Хорошо, я попробую учиться там сначала: D спасибо – keitaro3660