کلیدستان

نسخه‌ی کامل: اجرای کد هنگام اشاره بر روی سه عکس در هر سطر لیست (نه با اشاره روی item)(در اندروید)
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام به همه

من یک لیست میخوام که در هر سطرش فقط سه عکس باشه
و با کلیک بر روی هر عکس یه activity جدید باز بشه(یعنی در هر سطر قابلیت کلیک بر روی 3 عکس داشته باشد ن فقط بر روی کل سطر)

ممنون از دوستان
سلام.
کلید زیر را بخوانید :

کلید شماره 843

در کلید فوق، چگونگی ساخت ListView سفارشی شرح داده شده است و با توجه به توضیحات آن، متوجه می شوید که چگونه تعدادی عنصر دلخواه را در ساختار هر ردیف (item) از ListView قرار بدهید (مثلا شما باید 3 تا ImageView در فایل xml متناظر با ساختار گرافیکی هر ردیف، تعریف کنید).
همچنین باید روش زیر را حذف کنید (چون نمی خواهید که با اشاره بر روی کل ردیف، اتفاقی بیفتد) :

کد پی‌اچ‌پی:
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @
Override
            
public void onItemClick(AdapterView<?> parent, final View view,
                int position, long id) {                        
                        Intent i = new Intent(getApplicationContext(), SecondActivity.class);
                        number_of_keys = String.valueOf(position+1); 
                        i.putExtra("key_number", number_of_keys);
                        startActivity(i);       
            } 

سپس در Adapter مربوط به ListView ، تعیین می کنید که با اشاره بر روی ImageView هایی که برای عکس ها قرار داده اید، چه اتفاقی بیفتد (چه کدی اجرا شود).

ممنون ولی من میخوام 120 عکس توی یک xml نشون بدم و بعدش با کلیک بر روی هر عکس یک activity باز بشه
راه حل بهتری ندارید?

فک کنم listview خیلی مناسب نیاشه
 
سلام شما میتونید از یه گرید ویو سفارشی شده استفاده کنید که تقریبا شبیه یه لیست ویو سفارشیه
میتونید از این کلید استفاده کنید : کلید 2776
 

 
(۱۳۹۳/۱۰/۱۹, ۰۲:۰۰ ب.ظ)'aliasghar' نوشته: [ -> ]سلام شما میتونید از یه گرید ویو سفارشی شده استفاده کنید که تقریبا شبیه یه لیست ویو سفارشیه
میتونید از این کلید استفاده کنید : کلید 2776
 

 

 
هنگام import با این اررور مواجه میشوم (امپورت میشود ولی ران نمیشود)

[عکس: 1.JPG]


با حذف پوشه گفته شده حل شد

ممنون از شما دوست عزیز
 
               
کد پی‌اچ‌پی:
gridview.setOnItemClickListener(new OnItemClickListener() {
                    @
Override
                    
public void onItemClick(AdapterView<?> parent, View v,
                            int position, long id) {
                        String position_string = "you pressed the item number " +String.valueOf(position+1) + " in GridView";
                        Toast.makeText(getApplicationContext(), position_string, Toast.LENGTH_SHORT).show();
                    }
                }); 

وقتی به جای این کد:

                       
کد پی‌اچ‌پی:
String position_string "you pressed the item number " +String.valueOf(position+1) + " in GridView";
                        
Toast.makeText(getApplicationContext(), position_stringToast.LENGTH_SHORT).show(); 

این کد
کد پی‌اچ‌پی:
startActivity(new Intent(MainActivity.thisActivity2.class)); 

رو قرار میدم has stop میدهد و خارج میشود   

لازم به ذکر است که activity2 را در mainfest تعریف کردم              


 
(۱۳۹۳/۱۰/۱۹, ۰۴:۰۷ ب.ظ)'aanndd' نوشته: [ -> ]               
کد پی‌اچ‌پی:
gridview.setOnItemClickListener(new OnItemClickListener() {
                    @
Override
                    
public void onItemClick(AdapterView<?> parent, View v,
                            int position, long id) {
                        String position_string = "you pressed the item number " +String.valueOf(position+1) + " in GridView";
                        Toast.makeText(getApplicationContext(), position_string, Toast.LENGTH_SHORT).show();
                    }
                }); 

وقتی به جای این کد:

                       
کد پی‌اچ‌پی:
String position_string "you pressed the item number " +String.valueOf(position+1) + " in GridView";
                        
Toast.makeText(getApplicationContext(), position_stringToast.LENGTH_SHORT).show(); 

این کد
کد پی‌اچ‌پی:
startActivity(new Intent(MainActivity.thisActivity2.class)); 

رو قرار میدم has stop میدهد و خارج میشود   

لازم به ذکر است که activity2 را در mainfest تعریف کردم   

           


 

 


حال با تغییر  
کد پی‌اچ‌پی:
MainActivity.this 
 به  getApplicationContext() درست شد