انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
نمایش چند عکس مختلف پشت سر هم با زدن یک button روی یک imageview (اندروید)

نمایش چند عکس مختلف پشت سر هم با زدن یک button روی یک imageview (اندروید)

#1
با عرض سلام خدمت اساتید محترم
ببخشید من میخواستم با زدن یک button تعدادی عکس از drawable روی یک imageview نمایش دهم از حلقه for استفاده کردم ولی فقط عکس آخرین دور حلقه روی imageview نمایش داده میشه لطفا اگه میتونین کمکم کنین ممنون میشم.
با استفاده از یک تابع جدا هم خارج از button استفاده کردم باز همین نتیجه رو گرفتم. فقط عکس آخر نمایش داده میشه.

 این دستورات کلیده

کد پی‌اچ‌پی:
        btn2.setOnClickListener(new OnClickListener(){
            public 
void onClick(View arg0) {
                
                
                
int max=24;
                
int min=10;
                
        

            
Random r = new Random();
            
int T r.nextInt(max min 1) + min;
            
            
            
            
            
    for(
int i=1i<=T;i++){
                
int max1=24;
                
int min1=1;
                
Random r1 = new Random();
                
int T1 r1.nextInt(max1 min1 1) + min1;
                
pic_number[i]=T1;
                
    }
    

    if(
pic_number[0]!=0){
    
pic_show(pic_number[1]);
      }
    
    if(
pic_number[1]!=0){
    
pic_show(pic_number[2]);
      }
    
    if(
pic_number[2]!=0){
    
pic_show(pic_number[3]);
      }
    
    if(
pic_number[3]!=0){
    
pic_show(pic_number[4]);
      }
    
    if(
pic_number[4]!=0){
    
pic_show(pic_number[5]);
      }
    
    if(
pic_number[5]!=0){
    
pic_show(pic_number[6]);
      }
    
    if(
pic_number[6]!=0){
    
pic_show(pic_number[7]);
      }
    
    if(
pic_number[7]!=0){
    
pic_show(pic_number[8]);
      }
    
    if(
pic_number[8]!=0){
    
pic_show(pic_number[9]);
      }

    
    if(
pic_number[9]!=0){
    
pic_show(pic_number[10]);
      }    
    
    
    if(
pic_number[10]!=0){
    
pic_show(pic_number[11]);
      }
    
    if(
pic_number[11]!=0){
    
pic_show(pic_number[12]);
      }
    
    if(
pic_number[12]!=0){
    
pic_show(pic_number[13]);
      }

    
    if(
pic_number[13]!=0){
    
pic_show(pic_number[14]);
      }
    
    if(
pic_number[14]!=0){
    
pic_show(pic_number[15]);
      }
    
    if(
pic_number[15]!=0){
    
pic_show(pic_number[16]);
      }

    
    if(
pic_number[16]!=0){
    
pic_show(pic_number[17]);
      }
    
    if(
pic_number[17]!=0){
    
pic_show(pic_number[18]);
      }
    
    if(
pic_number[18]!=0){
    
pic_show(pic_number[19]);
      }
    
    if(
pic_number[19]!=0){
    
pic_show(pic_number[20]);
      }
        
    if(
pic_number[20]!=0){
    
pic_show(pic_number[21]);
      }
        
    if(
pic_number[21]!=0){
    
pic_show(pic_number[22]);
      }
        
    if(
pic_number[22]!=0){
    
pic_show(pic_number[23]);
      }

        
    if(
pic_number[23]!=0){
    
pic_show(pic_number[24]);
      }


    
    }
            }); 

اینم تابع جدا

[/i]
کد پی‌اچ‌پی:
    private void pic_show (int n){
        
        
        if(
n==1){

img.setImageResource(R.drawable.a01);

p01+=1;
        }
        
        
        
        if(
n==2){

img.setImageResource(R.drawable.a02);

p02+=1;
        }
        
        
        
        if(
n==3){

img.setImageResource(R.drawable.a03);

p03+=1;
        }
        
        
        
        if(
n==4){

img.setImageResource(R.drawable.a04);

p04+=1;
        }
        
        
        
        if(
n==5){

img.setImageResource(R.drawable.a05);

p05+=1;
        }
        
        
        
        if(
n==6){

img.setImageResource(R.drawable.a06);

p06+=1;
        }
        
        
        
    
        if(
n==7){

img.setImageResource(R.drawable.a07);

p07+=1;
        }
        
        
        
        
        
        if(
n==8){

img.setImageResource(R.drawable.a08);

p08+=1;
        }
        
        
        
        if(
n==9){

img.setImageResource(R.drawable.a09);

p09+=1;
        }
        
        
        
        
        
        if(
n==10){

img.setImageResource(R.drawable.a10);

p10+=1;
        }    
        
        
        
        
        
        if(
n==11){

img.setImageResource(R.drawable.a11);

p11+=1;
        }
        
        
        
        if(
n==12){

img.setImageResource(R.drawable.a12);

p12+=1;
        }
        
        
        
        
        if(
n==13){

img.setImageResource(R.drawable.a13);

p13+=1;
        }
        
        
        
        
        if(
n==14){

img.setImageResource(R.drawable.a14);

p14+=1;
        }
        
        
        
        
        
        if(
n==15){

img.setImageResource(R.drawable.a15);

p15+=1;
        }
        
        
        
        if(
n==16){

img.setImageResource(R.drawable.a16);

p16+=1;
        }
        
                    
        
        if(
n==17){

img.setImageResource(R.drawable.a17);

p17+=1;
        }
        
        
        
        
        
        if(
n==18){

img.setImageResource(R.drawable.a18);

p18+=1;
        }

        
        
        
        
        if(
n==19){
ImageView img = (ImageViewfindViewById(R.id.imageView1);
img.setImageResource(R.drawable.a19);

p19+=1;
        }
        
        
        
        
        
        if(
n==20){

img.setImageResource(R.drawable.a20);

p20+=1;
        }
        
        
        
        
        
        if(
n==21){

img.setImageResource(R.drawable.a21);

p21+=1;
        }                
        
        
        
        
        if(
n==22){

img.setImageResource(R.drawable.a22);

p22+=1;
        }                
        
        
        
        
        if(
n==23){

img.setImageResource(R.drawable.a23);

p23+=1;
        }
        
        
        
        
        
        
        if(
n==24){

img.setImageResource(R.drawable.a24);

p24+=1;
        }
        
        
SystemClock.sleep(1000);

        
        
    } 
پاسخ

نمایش چند عکس مختلف پشت سر هم با زدن یک button روی یک imageview (اندروید)

#2
سلام.
فرصت نکردم کدهاتون رو کامل بخونم، ولی نکته زیر را در نظر داشته باشید :
شما از دستور زیر برای توقف بین نمایش عکس ها استفاده کرده اید :

کد پی‌اچ‌پی:
SystemClock.sleep(1000); 

به جای آن، از روش شرح داده شده در کلید زیر استفاده کنید :

کلید شماره 2610

--------------------------------------------------

در ضمن، سعی کنید که کدنویسی اضافه نداشته باشید (اگر 1000 تا عکس داشته باشیم، احتمالا 2000 خط کد باید اضافه کنید، زیرا شیوه کدنویسی غلط است). مثلا نام عکس ها دارای پیشوند ثابت و پسوند عددی متغیر است، پس کدها را به گونه ای بنویسید که شماره متناظر با عکس، دریافت شده و بعد نام عکس را ساخته و آن را در ImageView نماش بدهید. 

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط شماره مجازی امارات


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان