اکتبر 29, 2016
xamarin permission

مجوزها در زامارین (بخش اول)

مجوزها در زامارین می توانید از قالب پشتیبانی شده در ویژوال استودیو برای افزودن مجوزها در Manifest اندروید استفاده نمایید . فقط درخواست می دهید که برنامه برای اجرا نیاز به آن مجوز دارد ،زمانی که کاربران نرم افزار را دانلود می کنند باید این مجوز را بدهند. این راهنما توضیح می دهد که چگونه یک مجوز در ویژوال استودیو اضافه می شود و در این رابطه باید طریقه ی اضافه کردن به manifest را مطالعه فرمایید. 1- روی Properties در Solution Explorer دابل کلیک نمایید و در صفحه ی باز شده تب Android Manifest را انتخاب نمایید: 2- اگر […]
اکتبر 26, 2016

ذخیره حالت Activity در زامارین

ذخیره حالت Activity در زامارین در این بخش تئوری پشت ذخیره حالت در چرخه حیات Activity در زامارین توضیح داده می شود. ابتدا پروژه activity lifecycle را باز کرده و build و run کنید. پروژه بسیار ساده ای است که 2 تا activity دارد که نشان می دهد چرخه حیات چگونه است و متدهای مختلف به چه صورتی فراخوانی می شوند. زمانی که پروژه بالا می آید MainActivity به صورت زیر نمایش داده می شود: تراکنش های View State تمامی متدهای این نمونه کد در پنجره خروجی اپلیکیشن IDE نوشته شده است تا حالت های activity نمایش داده شود (برای […]
اکتبر 24, 2016
activity lifecycle

چرخه حیات Activity در زامارین (بخش پنجم)

چرخه حیات Activity در زامارین تداوم پیچیدگی اطلاعات علاوه بر تداوم دیتا در bundle، اندروید ذخیره اطلاعات را با override کردن OnRetainNonConfigurationInstance و بازگشت نمونه از Java.Lang.Object که شامل تداوم دیتا می شود را پشتیبانی می کند. 2 هدف اصلی برای ذخیره حالت با استفاده از OnRetainNonConfigurationInstance وجود دارد: 1- آبجکت برگشت داده شده از OnRetainNonConfigurationInstance در مقیاس بزرگ و دیتا تایپ های پیچیده به خوبی انجام می شود و دلیل آن این است که حافظه آبجکت را بر می گرداند. 2- متد OnRetainNonConfigurationInstance طبق نیاز و تقاضا فراخوانی می شود که مقرون به صرفه تر از استفاده از یک […]
اکتبر 22, 2016
activity lifecycle

چرخه حیات Activity در زامارین (بخش چهارم)

چرخه حیات Activity در زامارین Bundle State گزینه اصلی برای ذخیره حالت instance استفاده از آبجکت دیکشنری key/value که به عنوان bundle شناخته می شود است. همانطور که قبلا گفته شد زمانی که یک activity ایجاد می شود متد OnCreate به عنوان پارامتر bundle را پاس می دهد. این bundle می تواند حالت instance را restore کند. در زمانی که دیتا پیچیده است و به سادگی و با سرعت در key/value pair سریالایز نمی شود، استفاده از bundle توصیه نمی شود (مانند bitmapها) بلکه باید آن را برای مقدار ساده مانند رشته مورد استفاده قرار داد. هر activity روشی برای […]
اکتبر 20, 2016
activity lifecycle

چرخه حیات Activity در زامارین (بخش سوم)

چرخه حیات Activity در زامارین OnStop این متد زمانی فراخوانی می شود که activity دیگر برای کاربر قابل مشاهده نیست و زمانی اتفاق می افتد که یکی از اتفاقات زیر روی دهد: 1- activity جدید آغاز شده باشد و تحت پوشش قرار بگیرد 2- activity های موجود که به پیش زمینه آورده می شوند 3- activity ها destroy شوند OnStop معمولا در وضعیت low-memory فراخوانی نمی شود مانند زمانی که اندروید برای کمبود منبع دارد و نمی تواند به درستی activity را در بک گراند اجرا کند. برای حل این مشکل بهتر است در زمان destroy شدن activity به فراخوانی […]
اکتبر 18, 2016
toolbar در زامارین

tool bar در زامارین (بخش دوم )

tool bar در زامارین در ادامه آموزش قبل ، فولدری با نام menu در قسمت resources ایجاد می کنیم و فایل xml ، با نام action_menu.xml را ایجاد میکنیم و داخل این فایل xml، از طریق تگ item میتوانیم آیتم های لازم را مشخص کنیم و برای آنها آیکون و تیتر قرار دهیم.(مشابه با آموزش actionbar در زامارین) [crayon-5a2ed31b46f30969144557/] به main activity می رویم چون از toolbar موجود در کتابخانه support v7 استفاده کرده ایم در ابتدا در همان using ،toolbar آن را تعریف خواهیم کرد. [crayon-5a2ed31b46f37602372294/] با کد زیر ، toolbar را جایگزین اکشن بار می کنیم. [crayon-5a2ed31b46f3b946240939/] عنوان toolbar را نیز با […]
اکتبر 16, 2016
activity lifecycle

چرخه حیات Activity در زامارین (بخش دوم)

چرخه حیات Activity در زامارین ایجاد مجدد Activity در پاسخ به تغییرات پیکربندی برای این که مسائل پیچیده تر شوند اندروید تغییرات پیکربندی را نیز اضافه کرده است. تغییرات پیکربندی چرخه ایجاد مجدد/تخریب activity را سریع می کند و زمانی اتفاق می افتد که پیکربندی activity تغییر کند مانند زمانی که دستگاه چرخانده می شود ( و activity نیاز به rebuild شدن در حالت landscape یا portrait دارد) یا زمانی که کیبورد نمایش داده می شود ( و activity با فرصتی برای تغییر سایز نمایش داده می شود). تغییرات پیکربندی هنوز هم دلیل تغییر حالت activity است که در زمان […]
اکتبر 14, 2016

Api Level های اندروید (بخش سوم)

این راهنما کمک کرد بدانیم که چگونه Api Level های اندروید برای مدیریت سازگاری برنامه در ورژنهای اندروید استفاده میشود. در این راهنما مراحل با جزئیات برای تنظیم target framework و minimum Android version, و target Android version پروژه ارائه شده است .همچنین در خصوص چگونگی نصب sdk ها با sdk manager توضیح داده شد و مثالهایی برای توضیح بهتر api level ها و چگونگی اطمینان از کارکرد برنامه در پلتفرمهای مختلف ارائه شد و در انتها نیز در خصوص چگونگی نوشتن کتابخانه های اندروید نیز توضیحاتی ارائه گردید .
اکتبر 12, 2016
activity lifecycle

چرخه حیات Activity در زامارین (بخش اول)

چرخه حیات Activity در زامارین Activityها پایه های اصلی اپلیکیشن های اندروید هستند و می توانند در حالت های مختلف وجود داشته باشند.چرخه حیات activity با یک instantiation شروع و با destruction با پایان می رسد. در این بین حالت های مختلفی را شامل می شود. زمانی که حالت activity تغییر می کند متد مناسب چرخه حیات فراخوانی می شود و activity را از یک تغییر حالت ناگهانی مطلع می سازد و به منظور انطباق با این تغییر اجازه اجرای کد را به آن می دهد. این مقاله به بررسی چرخه حیات activityها و مسئولیتی که هر activity در طول […]