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


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
استفاده از GridView در برنامه اندروید ???

استفاده از GridView در برنامه اندروید ???

#1
Question 
با سلام خدمت شما استاد گرامی 

خواستم از شما درخواست راهنمایی را بر اساس کلید 2776 را داشته باشم ...

1_ چگونه برای هر عکس یک عنوان به صورت مختلف بنویسیم ؟
2-چگونه با لمس شدن هر عکس آن عکس تمام صفحه شود و قابلیت ارسال آن ( اضافه شدن چند دکمه مانند sahre , home و ... به این حالت ) از طریق برنامه های دیگر .
3-چگونه عکسی را که قبلا مشاهده نموده ایم برای مثال دور آن رنگ دیگری بیاید یا علامتی بنیشیند و ... .


با تشکر از شما
تلاش بی وقفه ضامن موفقیت در بهترین عرصه هاست .
بهترین ها در نزد خداوند اند و ما به دنبال بهترین هاییم 
پس این علم و کارمان را در جهت رضای خدا به خدمت میگیریم .
اللهم صلی علی محمد و آل محمد و عجل فرجهم

پاسخ

استفاده از GridView در برنامه اندروید ???

#2
سلام دوست عزیز.
1- اگر سایر آموزش های سایت کلیدستان در مورد ساخت ListView برای برنامه اندروید را خوانده باشید، در آنها، برای تعیین عنصرهای موجود در هر item (ردیف - row) از ListView ، یک فایل xml می ساختیم و عنصرهای هر item و نحوه قرارگیری آنها را در همان فایل xml تعیین می کردیم. اما اگر کدهای آموزش GridView که لینک آن را قرار دادید را با دقت خوانده باشید، خبری از فایل xml نیست و ما تنها با کد زیر، برای هر item ، یک ImageView ساخته ایم :

کد:
imageView = new ImageView(mContext);

یعنی با کدنویسی، عنصر جدیدی را تعریف کرده ایم و سپس ویژگی های مورد نظرمان را برای آن به کار برده ایم (با کدهای بعدی).
حال شما قصد دارید که علاوه بر نمایش یک عکس در هر item ، یک متن (عنوان عکس) نیز در هر item نمایش داده شود. برای این منظور، باید یک TextView نیز برای هر item تعریف کنید و رشته (متن - string) مورد نظرتان را هم در آن نمایش بدهید (چگونگی تعریف آن، مشابه همان کد بالا می باشد).

البته فایل xml نیز می توان برای هر item ساخت (بستگی به انتخاب برنامه نویس دارد).

2- در مورد تمام صفحه شدن عکس، باید ابتدا به سراغ قسمتی از کدها بروید که برای تعیین اجرای یک سری کد بعد از اشاره کاربر بر روی هر item می باشد، یعنی این قسمت از کدها :

کد:
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();
                    }
                });

در آن تعیین می کنید که با اشاره کاربر بر روی یک item ، وارد یک Activity جدید می شویم که در آن یک ImageView وجود دارد و Activity مورد نظر، شماره مربوط به item را از Activity قبلی دریافت کرده و بر اساس آن، عکس متناظر را در ImageView نمایش می دهد. در صورت تمایل، می توانید پس زمینه Activity را شفاف کنید تا بخشی از GridView را کاربر همچنان ببیند (مشابه فروشگاه های اندروید).

3- برای این مورد، شما باید از SharedPreferences استفاده کنید که ابتدا بتوانیم اطلاعات مربوط به دیده شدن یا دیده نشدن عکس ها را در برنامه ذخیره کنیم (حتی برای اجراهای بعدی برنامه). سپس برای هر item ، مطابق با اطلاعات SharedPreferences  تعیین شده برای آن، تعیین می کنیم که چگونه نمایش داده شود، مثلا یک ImageView با همان روشی که گفتم، اضافه می کنیم که اگر عکس قبلا دیده شده، یک عکس خاص در آن نمایش داده شود، اما اگر دیده نشده، عکسی دیگر را در آن نمایش می دهیم. یا مثلا برای تغییر رنگ دور عکس که دیگر راحت تر است و حتی نیاز به افزودن عنصر جدید نیست.

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

استفاده از GridView در برنامه اندروید ???

#3
با تشکر از راهنمایی شما 

فقط یک نکته مورد توجه و اینکه میشه کدی نوشت که وقتی روی عکسی کلیک شد به یک Activity دیگر نرویم و عکس در همین صفحه باز شود و دور آن حالت مات بگیرد و عنوان آن در صفحه نمایش داده شود ( مثل وقتی که اکشن بار کشویی را باز می نماییم ) .

سوال دوم : میشه در حالتی که بیان شد ، دکمه برای Share عکس قرار داد یا  نه ؟؟؟

با تشکر از شما
 
تلاش بی وقفه ضامن موفقیت در بهترین عرصه هاست .
بهترین ها در نزد خداوند اند و ما به دنبال بهترین هاییم 
پس این علم و کارمان را در جهت رضای خدا به خدمت میگیریم .
اللهم صلی علی محمد و آل محمد و عجل فرجهم

پاسخ

استفاده از GridView در برنامه اندروید ???

#4
1- اگر قصد ندارید که عکس در یک Activity جدید نمایش داده شود، می توانید از Dialog با پس زمینه شفاف استفاده کنید. برای ساخت Dialog ، کلید زیر را بخوانید (نمایش یک پیام به کاربر، به صورت یک پنجره جدید، با استفاده از Dialog) :

http://www.kelidestan.com/keys/keys.php?key=227

برای شفاف کردن پس زمینه یک Dialog ، کلید زیر را بخوانید :

http://www.kelidestan.com/keys/keys.php?key=277

علاوه بر این، از AlertDialog نیز می توانید استفاده کنید :

http://www.kelidestan.com/keys/keys.php?key=2407

2- بله در این حالت هم می توان عکس را به اشتراک گذاشت (sharing). یک دکمه (Button) برای آن تعریف می کنید که برای اجرای کدهای به اشتراک گذاری عکس به کار رود. مثالی که برای AlertDialog زدیم، خودش دکمه داره، اما برای قرار دادن یک دکمه (Button) درون پیام نمایش داده شده توسط Dialog ، کلید زیر را بخوانید :

http://www.kelidestan.com/keys/keys.php?key=2554

برای به اشتراک گذاری عکس، کلید زیر را بخوانید :

http://www.kelidestan.com/keys/keys.php?key=357

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

استفاده از GridView در برنامه اندروید ???

#5
سلام دوستان یه گریدویو ساختم که میخوام وقتی کسی روی هر کدوم از آیتمها کلیک کرد tost بزنه و بازم روی هر کدوم از آیتمها کلیک کرد بره به اکتیویتی بعدی مشکل اینجاست که روی هر کدوم از آیتمها میرنم فقط میره توی یک اکتیویتی من 9 تا اکتیویتی دارم و میخوام با کلیک روی هر کدوم از عناصر توی گرید ویو بره توی اکتیویتی جداگانه
ممنون میشم راهنمایی کنید
اینم کدهای مربوط به اکتیوینی جاری
http://s1.picofile.com/file/8262881276/code.txt.html
پاسخ
 سپاس شده توسط شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


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