آموزش جاوا و اندروید

یادداشت های یک برنامه نویس معمولی

آموزش جاوا و اندروید

یادداشت های یک برنامه نویس معمولی

طبقه بندی موضوعی

۲۳ مطلب با موضوع «آموزش اندروید :: متریال دیزاین» ثبت شده است

AppBarLayout تولبار کشیدنیه! یعنی این شکلی

 

AppBarLayout یک لینیر لیوت از نوع عمودی هست. پرنت این لیوت حتما باید coordinator layout باشه تا انیمیشنش ایجاد شه.

width این لیوت رو match_parent و height اون رو معمولا 300dp میذارن.

 

داخل این ویو، CollapsingToolbarLayout قرار میگیره. داخل این هم imageView برای بک گراند و Toolbar قرار میگیرن.

اتریبیوت های لازم رو توی کد توضیح میدم.

 

نکته دیگه اینه که ادامه اپلیکیشن، یعنی بعد از CollapsingToolbarLayout، حتما باید توی NestedScrollView قرار بگیره.

 

اگر بخواهیم توی CollapsingToolbarLayout ویویی قرار بدیم، باید از اتریبیوت های app:layout_anchor و layout_anchorGravity استفاده کنیم.

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۱ شهریور ۹۹ ، ۱۴:۵۲
میم دال

اتریبیوت 

android:fitsSystemWindows="true"

که عمدتا توی coordinator layout استفاده میشه زمانی کاربرد داره که status bar و navigation bar رو توی تم توسط عبارات زیر transparent کرده باشیم.

<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>

 

حالا کار این اتریبیوت چی هست؟ کل ویو رو توی فول اسکرین فیت میکنه (یعنی status bar و navigation bar رو در نظر نمیگیره)

اینجا کامل توضیح داده به زبان چینی :)) با گوگل ترنسلیت بزن به فارسی 

 

حالا اگر اون کدا رو توی تم نوشتیم، برای اینکه کامل استاتوس بار هاید شه باید یه سری کد توی اکتیویتی بنویسیم که اینجا گفته

 

این مقاله مدیوم هم بد نیس

۰ نظر موافقین ۰ مخالفین ۰ ۳۱ مرداد ۹۹ ، ۲۳:۳۳
میم دال

سایت برای آیکون:

https://materialdesignicons.com

 

https://www.flaticon.com

 

فونت های زیبا و رایگان:

https://irfont.ir

 

متن dummy:

https://lipsum.com

 

بررسی میکنه که json نوشته شده ولید هست یا خیر:

https://jsonlint.com

 

 

https://androidacademic.blogspot.com

 

ساخت لوگوی رایگان

 

https://www.freelogodesign.org

 

توی این سایت پروژه و کتابخونه های خوبی پیدا میشه

https://android-arsenal.com

 

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

https://www.materialpalette.com

 

سازنذه آیکون های مختلف (لانچر، تولیار، نوتیفیکیشن و اینا) برای اندروید

 

https://romannurik.github.io/AndroidAssetStudio/index.html

 

سایت جدید مورد علاقم:

https://android.jlelse.eu

 

سورس های رایگان

https://sarvamooz.com

 

تبدیل json به کلاس pojo

 

https://json2csharp.com

 

دستورات کلیدی گیت

https://www.tejariapp.com/git-commands/

 

 

Dummy rest API

http://dummy.restapiexample.com

 

معرفی دیزاین پترن ها همراه با نمونه کد

 

https://sourcemaking.com/design_patterns

۰ نظر موافقین ۰ مخالفین ۰ ۲۸ مرداد ۹۹ ، ۱۳:۴۳
میم دال

این یه پروژه ساده برای پیاده سازی انیمیشن Circular reveal بوده که جز مباحث متریال دیزاین هست و روی API21 جواب میده.

 

پروژه شبیه این لینک و این یکی لینک هست. یک FAB داره که با کلیک روی اون صفحه منو باز و بسته میشه.

 

پروژه چالش خاصی نداشت فقط اینکه کجا چه ویویی رو ویزیبل یا اینویزیبل کنی یه کم زمان برد.

 

 

 

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ تیر ۹۹ ، ۰۸:۵۷
میم دال

CoordinatorLayout نسخه پیشرفته Frame layout هست. این لیوت انیمیشن های ویوها که مرتبط با متریال دیزاین هستن و همچنین اینتراکشن ها رو خیلی خوب مدیریت میکنه.

 

مثلا اگر FAB توی CoordinatorLayout باشه و اسنک بار نمایش داده بشه، FAB به صورت خودکار به سمت بالا هل داده میشه.

 

نکته جالب اینه که توی CoordinatorLayout هیچی نمیتونه روی FAB قرار بگیره :))

یعنی حتا اگر یه ویویی رو از قصد با FAB براش اوورلپ ایجاد کنیم بازم روی FAB نمیفته!

برای تست، یه تکست ویو با بک گراند solid روی FAB قرار دادم ولی بازم FAB رو کاور نکرد :))

 

نتیجه اخلاقی: FAB رو حتما توی CoordinatorLayout بذار.

 

 

یک الگوی متداول برای طراحی UI اینجوریه که روت رو CoordinatorLayout میذارن و یک ConstraintLayout و همچنین سایر المان های متریال دیزاین مثل FAB رو توش قرار میدن.

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ تیر ۹۹ ، ۰۳:۰۷
میم دال

چند تا متد هست که میشه باهاشون ابعاد یک ویو رو به دست آورد:

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ تیر ۹۹ ، ۰۳:۲۱
میم دال

Elevation به معنی ارتفاع بوده و یکی از مواردی است که توی متریال دیزاین مطرح شده.

همه ویوها این پراپرتی رو دارن و مثلا اگر به یک تکست ویو 5dp الویشن بدیم باعث میشه یه مقدار بالاتر از سطح بیاد و ارتفاع بگیره.

 

همین!

۰ نظر موافقین ۰ مخالفین ۰ ۰۸ تیر ۹۹ ، ۱۹:۲۳
میم دال

در این قسمت کد اسنک بار آورده شده.

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ خرداد ۹۹ ، ۲۰:۱۹
میم دال

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

 

برای از بین رفتنش باید اون رو به چپ یا راست کشید (البته اگر لی اوتی که بهش میدیم coordinator باشه، مثل Toast زمان داره ولی با swip کردن هم از بین میره)

 

توی اکتیویتی نمایش داده میشه. یعنی اگر اکتیویتی finish بشه اسنک هم از بین میره ولی Toast تا زمانی که براش تعریف شده سپری نشه از بین نمیره.

 

اطلاعات بیشتر

۰ نظر موافقین ۰ مخالفین ۰ ۰۳ خرداد ۹۹ ، ۰۵:۱۴
میم دال