با سلام خدمت شما استاد گرامی
خواستم از شما درخواست راهنمایی را بر اساس
کلید 2776 را داشته باشم ...
1_ چگونه برای هر عکس یک عنوان به صورت مختلف بنویسیم ؟
2-چگونه با لمس شدن هر عکس آن عکس تمام صفحه شود و قابلیت ارسال آن ( اضافه شدن چند دکمه مانند sahre , home و ... به این حالت ) از طریق برنامه های دیگر .
3-چگونه عکسی را که قبلا مشاهده نموده ایم برای مثال دور آن رنگ دیگری بیاید یا علامتی بنیشیند و ... .
با تشکر از شما
سلام دوست عزیز.
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 با همان روشی که گفتم، اضافه می کنیم که اگر عکس قبلا دیده شده، یک عکس خاص در آن نمایش داده شود، اما اگر دیده نشده، عکسی دیگر را در آن نمایش می دهیم. یا مثلا برای تغییر رنگ دور عکس که دیگر راحت تر است و حتی نیاز به افزودن عنصر جدید نیست.
با تشکر از راهنمایی شما
فقط یک نکته مورد توجه و اینکه میشه کدی نوشت که وقتی روی عکسی کلیک شد به یک Activity دیگر نرویم و عکس در همین صفحه باز شود و دور آن حالت مات بگیرد و عنوان آن در صفحه نمایش داده شود ( مثل وقتی که اکشن بار کشویی را باز می نماییم ) .
سوال دوم : میشه در حالتی که بیان شد ، دکمه برای Share عکس قرار داد یا نه ؟؟؟
با تشکر از شما
سلام دوستان یه گریدویو ساختم که میخوام وقتی کسی روی هر کدوم از آیتمها کلیک کرد tost بزنه و بازم روی هر کدوم از آیتمها کلیک کرد بره به اکتیویتی بعدی مشکل اینجاست که روی هر کدوم از آیتمها میرنم فقط میره توی یک اکتیویتی من 9 تا اکتیویتی دارم و میخوام با کلیک روی هر کدوم از عناصر توی گرید ویو بره توی اکتیویتی جداگانه
ممنون میشم راهنمایی کنید
اینم کدهای مربوط به اکتیوینی جاری
http://s1.picofile.com/file/8262881276/code.txt.html