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

درخواست کمک برای تغییربکگراند بصورت رندوم در بازی هنگ من استاد...

حامی  12 سال پیش  12 سال پیش
+1 0

سلام.توی آموزش بازی هنگ من که استاد دادن میخوام یک بکگراند بزارم که هروقت بازی شروع شد اتوماتیک یکی از تصاویری که من مشخص کردم رو بصورت رندوم بعنوان همین بکگراند نشون بده...کسی بلده؟

سوال دوم: برای اینکه وقتی کلمه رو درست حدس زد و یا غلط حدس زد،همزمان با نوشتن:you win یا you lose  یکی از تصاویری که من مشخص کردم رو برای چند ثانیه نشون بده راحت ترین راه حل چیه؟

خواهشا اگر کسی بلده با نوشتن دستور و کد و توضیحات بگه...یعنی زیر دکترا بگه ما هم بفهمیم!...ممنونم...

 برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال 
مجتبی یگانه  12 سال پیش
+4 0

اول باید یک عدد تصادفی بسازید ! ، از 0 تا تعداد عکس هایی که دارید کد پائین یه عدد بین 0 تا 9 تولید میکنه

Random rand = new Random();
int random = rand.nextInt(10);

حالا کافیه این مقدار رو سوئیچ کنید

switch(random ){
case 0: imageview.setImageResource(); // image0 break; case 1: imageview.setImageResource(); // image1 break; }

این کار میتونه در هر زمانی انجام بشه ، موقع برنده شدن ، بازنده شدن و ... 

0 0
ممنونم فقط :داخل پرانتزهای باز و بسته ای که توی این کدها نوشتین باید فقط اسم عکسم رو بنویسم یا آدرسش رو باید بدم؟ اگر بخوام با هربار باز شدن برنامه بکگراند تغییرکنه باید این کدها رو بلافاصله بعد از شروع اکتیویتی(اونجایی که اکستندمیشه) قراربدم؟ (12 سال پیش)
0 0
اونجا باید یک تصویر رو قرار بدید و درج عکس روش های متعدد داره (چند تا متد هست) می تونید یکی رو استفاده کنید ، مثلا اگه تصویر در کارت حافظه هست میتونید از setImageBitmap استفاده کنید :) - باید تابع رو در onCreate قرار بدید ، فکر کنم مطالعه آموزش ها الان براتون مفید تر از نوشتن پروژه باشه - موفق باشید :) (12 سال پیش)
0 0
دوست عزیز وقتی متنی به این بزرگی دارید، توی پاسخ ها و طبق راهنمای سایت درج کنید، الان این کدهایی که گذاشتید اصلا خوانا نیست و کسی هم نمیتونه کمکتون کنه، لطفا بخش قوانین و راهنمای سایت رو مطالعه کنید و پستی پایینی رو هم طبق راهنمای درج کد در سایت مرتب کنید. موفق باشید (12 سال پیش)
پاسخ به سوال 
Ali  12 سال پیش
+3 0

ببخشید متد setBackgroundResource بود، مثلا به linearlayout ایدی lin1 را میدیم بعد یک دکمه هم با ایدی btn1 داریم بعد با استفاده از کدایی که ALU جان گفته بود کاری میکنیم که با هربار کلیک روی دکمه عکس Background عوض بشه:

 final LinearLayout lin1 = (LinearLayout) findViewById(R.id.lin1);
Button btn1 = (Button) findViewById(R.id.btn1);

final Random rand = new Random();

btn1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
int random = rand.nextInt(تعداد عکس ها);

switch (random) {
case 0:
lin1.setBackgroundResource(R.drawable.image1);
break;

case 1:
lin1.setBackgroundResource(R.drawable.image2);
break;
}

}
});
پاسخ به سوال 
CreativeBoy  12 سال پیش
+5 0

جواب A.L.U درست هست ونباید مشکلی داشته باشه، به نظر من شما به layout اصلیتون یه id بدید و به شکل زیر براش BG های random بذارید. (توی نظرات بالا @Ali گفته که از relativeLayout استفاده کنی که کار خوبی هست ولی برای راحتتر شدن کار میتونی برای mainLayout یه Background بذاری و بقیه element ها میتونن توی linearLayout قرار بگیرن.)

این کد رو اگه توی متد onCreate بذارید هر بار که برنامه شروع بشه به صورت random یک BG به نمایش در میاد

LinearLayout lay1 = (LinearLayout) findViewById(R.id.lay1);
int rndNum = (int) (Math.random() * 3);

switch (rndNum) {
    case 0:
        lay1.setBackgroundResource(R.drawable.img1);
        break;
    case 1:
        lay1.setBackgroundResource(R.drawable.img2);
        break;
    case 2:
        lay1.setBackgroundResource(R.drawable.img3);
        break;
}

 

برای سوال دومتون، اگر آموزش thread ها و آموزش Dialog ها رو مطالعه کنید، میتونید برای این منظور کارهای خیلی جالبی انجام بدید. مثلا توی یه dialog عکستون رو نشون بدید و با استفاده از thread ها زمان بسته شدن dialog رو تعیین کنید.

0 0
دوستان پاسخ های کاملی دارند ، به نظرمن هم مطالعه آموزش ها مفید تر هست :) (12 سال پیش)
0 0
سلام داداش.دمت گرم.این کد شما جواب داد.کد بقیه دوستانی که در بالا گفته بودن،نیاز به گذاشتن ایمیج ویو و باتن بود.اما من میخواستم اتوماتیک باهرباربازشدن(اجراشدن)برنامه یه تصویر رو بصورت رندوم نشون بده که فقط کدی که شما نوشتید دقیقا این کار رو میکردالبته از دوستان بالا هم که زحمت کشیدن وقت گذاشتن تشکرمیکنم.دفعه اول که این کد رو گذاشتم برنامه کرش کرد... دوتاتغییر دادم درست شد.میگم که بقیه دوستان هم استفاده کنن: دفعه اول این کد رو در ابتدای متد oncreate گذاشتم اما دیدم برنامه کرش میکرددرحالیکه پروژه ارور نداشت... اما بعدش این کدها رو در آخر متد oncreate قبل از بسته شدن متد گذاشتم و اسم پکیج رو هم تغییر دادم(چون آدرس پکیج استاد با آدرس پکیج من متفاوت بود) و همه چی درست شد... با تشکر از همگی دوستان مخصوصا CreativeBoy (12 سال پیش)

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