کتابخانه ی Material SearchView به صورت RTL
در بیشتر برنامه ها، کاربران نیاز دارند محتوای برنامه را جستجو کنند. برای پیاده سازی این ویژگی روش های مختلفی وجود دارد، یکی از این روش ها استفاده از SearchView در Toolbar برنامه است. کتابخانه ی Material SearchView یکی از کتابخانه های محبوب گیت هاب با ۱,۰۹۴ ستاره می باشد. این کتابخانه SearchView را به صورت متریال با دو نوع انیمیشن مختلف برای اندرویدهای ۵ به بالا (CircularReveal) و کمتر از ۵ (FadeIn) پیاده کرده است.
اگر در پروژه حداقل SDK پشتیبانی شده را اندروید ۴٫۲ تعریف کرده باشید، می توانید از همین کتابخانه برای برنامه ی خود به صورت RTL استفاده کنید. اما از آنجا که در اندروید ۴٫۰ و ۴٫۱ هنوز ویژگی پشتیبانی از RTL به سیستم عامل اضافه نشده بود، با تغییر در فایل های layout و کدهای جاوای این کتابخانه، آن را به یک کتابخانه ی RTL تبدیل کرده ام که در هر نسخه ی اندرویدی از آن استفاده کنید به صورت RTL نمایش داده شود.
جهت استفاده ی آسان، کتابخانه ی جدید را JitPack منتشر کرده ام. لینک کتابخانه در گیت هاب:
https://github.com/abbas-oveissi/MaterialSearchView
نحوه ی استفاده از کتابخانه:
۱- کد زیر را به فایل build.gradle که برای کل پروژه می باشد، اضافه کنید.
1 2 3 4 5 6 |
allprojects { repositories { ... maven { url "https://jitpack.io" } } } |
۲- کد زیر را به فایل build.gradle ماژولی که در آن می خواهید از کتابخانه استفاده کنید، اضافه کنید.
1 2 3 |
dependencies { compile 'com.github.abbas-oveissi:materialsearchview:1.0.4' } |
۳- در پایان برای نمایش SearchView در برنامه، کد زیر را در فایل XML یک Activity قرار دهید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<!-- Must be last for right layering display --> <FrameLayout android:id="@+id/toolbar_container" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/theme_primary" /> <ir.oveissi.materialsearchview.MaterialSearchView android:id="@+id/search_view" android:layout_width="match_parent" android:layout_height="wrap_content" /> </FrameLayout> |