آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
مشکل عدم دسترسی خریداران پیشین به برخی آموزش ها برطرف شد
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

والپیپر و تنظیم ارتفاع آن(حل شد)

f-Dehghan  10 سال پیش  10 سال پیش
+1 0

این کد والپیپر توی بعضی گوشیها ،  ست میشه ولی توی گوشی مثل سامسونگ گالاکسی نوت 3 ،4.4.2 خطا میده

  Thread thread4 = new Thread(new Runnable() {

@Override
public void run() {

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
height = metrics.heightPixels;
width = metrics.widthPixels;
mBitmap = BitmapFactory.decodeResource(getResources(), mFullSizeIds[position]);
bitmap = Bitmap.createScaledBitmap(mBitmap, width, height, false);
wallpaperManager = WallpaperManager.getInstance(SingleViewActivity.this);
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(width, height);
try {
wallpaperManager.setBitmap(bitmap);
HANDLER.post(new Runnable() {

@Override
public void run() {
Intent intent = new Intent(SingleViewActivity.this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity(intent);
Toast.makeText(SingleViewActivity.this, R.string.choose, Toast.LENGTH_SHORT).show();
SingleViewActivity.this.finish();
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}
});

}
catch (IOException e) {
e.printStackTrace();
}
}
});
thread4.start();

لاگ کتش اینه.

04-12 21:56:26.466: E/dalvikvm-heap(7621): Out of memory 
04-12 21:56:28.126: E/ActivityThread(7677): java.lang.reflect.InvocationTargetException
04-12 21:56:28.126: E/ActivityThread(7677): java.lang.UnsatisfiedLinkError
+1 0
دو تا خطا دارین اولی OutOfMemoryError که قبلاً بچه ها دربارش بحث کردن - تو آموزش ها هم استاد هم به نظر حداقل اشاره کرده باشن خطارم نیست، دومی رو هم نمیدونم چیه InvocationTargetException (10 سال پیش)
0 0
یه جا گفتن android:largeHeap="true" رو به منیفست اضافه کردند درست شده .کدوم قسمتش؟ توی اکتیویتی که کرش میکنه؟ (10 سال پیش)
+1 0
سایز عکس هاتون چند در چنده؟ حجم مهم نیست ولی سایز رو نباید خیلی بالا بگیرید. (10 سال پیش)
0 0
1920 *1080 میخوام عکسها والپیپر تبلت قرار بگیره .سایزش کمتر بشه کیفتش کم نمیشه؟ چه حدودی خوبه؟ (10 سال پیش)
0 0
آخه تبلتی که ورژن اندرویدش پایینه بدون مشکل اجرا میکنه کرش هم نمیکنه.ولی ورژن 4.4 کرش میده .چرا؟ (10 سال پیش)
0 0
همین کد توی صفحه اصلی توی دستور کلیک یک دکمه خوب کار میکنه. ولی وقتی روی عکس thumbnail کلیک میشه میره توی صفحه که عکس بزرگ وسط صفحه قرار داره با یک دکمه که اگر میخواد پس زمینه قرارش بده.اگر روی دکمه کلیک کنم این کرش اتفاق میفته.یعنی مموری به خاطر عکس بزرگ وسط صفحه پر میشه؟ (10 سال پیش)
+2 0
سایزتون رو 960 در 540 بگیرید، توی گوشی و تبلت تفاوت خاصی نمیکنه، ولی روش درست اینه که شما سایز صفحه نمایش رو بگیرید و بعد عکس رو تبدیل به Bitmap کنید و بعد اون Bitmap رو به اندازه سایز صفحه گوشی Resize کنید. من سایز عکس های فول سایزم در برنامه هام رو همین سایز میگیرم و چون برنامه ها روی چند گوشی و چند تبلت تست میشن، به این نتیجه رسیدم که نیازی به سایز بزرگتر از این ندارم، شما هم میتونید حداکثر سایزتون رو همین بگیرید. کیفیت عکس با سایز عکس متفاوتن و همیشه سایز بزرگتر کیفیت بیشتری نداره. (10 سال پیش)
0 0
ممنون ."توی گوشی و تبلت تفاوت خاصی نمیکنه" .این مطلب کارمو راه انداخت .تشکر (10 سال پیش)
0 0
دو تا پاسخ پایین تر یه قسمت دیگه سوالمه .دوستان کسی میتونه راهنمایی کنه؟ (10 سال پیش)
 برای این سوال 4 پاسخ وجود دارد.
پاسخ به سوال 
tux-world  10 سال پیش
+1 0

در صورتی که شما عکسی با سایز بزرگ دارید این مشکل پیش میاد بهتره که android:largeHeap="true" رو تو مانیفست قسمت application بزارید تست کنید

پاسخ به سوال 
صالحی  10 سال پیش
+1 0

فرض کنید که در پوشه های drawable از پروژه اندروید، یک عکس با نام myImage داریم و می خواهیم که از آن، یک Bitmap بسازیم، برای این منظور، کدهای زیر را می نویسیم :

 

Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.myImage);

 

 

یا همون گزینه ای که تو منیفست گذاشتی  ولی بیت مپ کردن بهتره  بعد از عکس استفاده کن

 

 

0 0
از همین کد استفاده کردم. (10 سال پیش)
پاسخ به سوال 
f-Dehghan  10 سال پیش
0 0

يه سوال دیگه .من دیفالت برنامه رو روی LANDSCAPE تنظیم کردم. اگر برنامه روی گوشی نصب بشه به جای اینکه عکسو LANDSCAPE بذاره این شکلی میکنه راهی هست بهش بگم تصویرو مثل پایینی بذاره؟

میخوام حتی اگه گوشی بود این طوری باشه

و یا ارتفاعش بشه ارتفاع گوشی و عکس wide بشه یعنی ارتفاع عکس با ارتفاع گوشی ست بشه با کد زیر عرض و ارتفاع گوشی رو گرفتم توی خط آخر چطور فقط ارتفاع رو بهش بدم؟

 DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
height = metrics.heightPixels;
width = metrics.widthPixels;
mBitmap = BitmapFactory.decodeResource(getResources(), mFullSizeIds[position]);
bitmap = Bitmap.createScaledBitmap(mBitmap, width, height, false);

0 0
دوستان راه حلی اگر دارید خیلی به من کمک میکنه.با سرچ به جایی نرسیدم. (10 سال پیش)
پاسخ به سوال 
f-Dehghan  10 سال پیش
+1 0

این طوری نوشتم کارمو راه انداخت .

 mBitmap = BitmapFactory.decodeResource(getResources(), mFullSizeIds[position]);
int mywidth = (mBitmap.getWidth());
bitmap = Bitmap.createScaledBitmap(mBitmap, mywidth, height, false);
wallpaperManager = WallpaperManager.getInstance(SingleViewActivity.this);
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(mywidth, height);

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .