From e3cc80c16ece9f16e3f88b9f2361db92509184cb Mon Sep 17 00:00:00 2001 From: Pop Date: Mon, 16 Mar 2020 12:12:09 +0700 Subject: [PATCH 1/3] Add search view --- .../sheetselection/demo/MainActivity.kt | 2 + .../sheetselection/SheetSelection.kt | 78 +++++++++++++++++-- .../sheetselection/SheetSelectionAdapter.kt | 30 +++++-- .../src/main/res/drawable/ic_search.xml | 9 +++ .../res/layout/dialog_sheet_selection.xml | 41 +++++++++- 5 files changed, 145 insertions(+), 15 deletions(-) create mode 100644 sheetselection/src/main/res/drawable/ic_search.xml diff --git a/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt b/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt index b1e21b7..ed72eef 100644 --- a/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt +++ b/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt @@ -25,6 +25,7 @@ class MainActivity : AppCompatActivity() { .items(items) .selectedPosition(2) .showDraggedIndicator(true) + .searchEnabled(true) .onItemClickListener { item, position -> textview.text = "You selected `${item.value}`, At position [$position]." } @@ -46,6 +47,7 @@ class MainActivity : AppCompatActivity() { ) .selectedPosition(2) .showDraggedIndicator(true) + .searchEnabled(true) .theme(R.style.Theme_Custom_SheetSelection) .onItemClickListener { item, position -> textview.text = "You selected `${item.value}`, At position [$position]." diff --git a/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelection.kt b/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelection.kt index 6aeb3cf..9a0c638 100644 --- a/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelection.kt +++ b/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelection.kt @@ -6,9 +6,12 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.annotation.StyleRes +import androidx.appcompat.widget.SearchView import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentActivity import androidx.fragment.app.FragmentManager +import com.google.android.material.bottomsheet.BottomSheetBehavior +import com.google.android.material.bottomsheet.BottomSheetDialog import com.google.android.material.bottomsheet.BottomSheetDialogFragment import kotlinx.android.synthetic.main.dialog_sheet_selection.* @@ -16,6 +19,24 @@ class SheetSelection private constructor() : BottomSheetDialogFragment() { var onItemClickListener: OnItemSelectedListener? = null + private val adapter by lazy { + SheetSelectionAdapter( + source = arguments?.getParcelableArrayList(ARGS_ITEMS) ?: emptyList(), + selectedPosition = arguments?.getInt(ARGS_SELECTED_POSITION, NO_SELECT) ?: NO_SELECT, + onItemSelectedListener = onItemSelectedListener + ) + } + + private val screenHeight by lazy { + val statusBarHeight = try { + val resourceId = resources.getIdentifier("status_bar_height", "dimen", "android") + resources.getDimensionPixelSize(resourceId) + } catch (e: Exception) { + 0 + } + resources.displayMetrics.heightPixels - statusBarHeight + } + override fun getTheme(): Int = arguments?.getInt(ARGS_THEME) ?: super.getTheme() override fun onCreateView( @@ -36,23 +57,61 @@ class SheetSelection private constructor() : BottomSheetDialogFragment() { val title = args.getString(ARGS_TITLE) if (title.isNullOrEmpty()) { textViewTitle.visibility = View.GONE + textViewTitle.text = null } else { + textViewTitle.visibility = View.VISIBLE textViewTitle.text = title } - recyclerViewSelectionItems.adapter = SheetSelectionAdapter( - items = args.getParcelableArrayList(ARGS_ITEMS) ?: emptyList(), - selectedPosition = args.getInt(ARGS_SELECTED_POSITION, NO_SELECT), - onItemSelectedListener = internalOnItemSelectedListener - ) + if (args.getBoolean(ARGS_SEARCH_ENABLED)) { + buttonSearch.visibility = View.VISIBLE + buttonSearch.setOnClickListener(onSearchClickListener) + searchView.setOnCloseListener(onSearchCloseListener) + searchView.setOnQueryTextListener(onSearchQueryTextListener) + } + + recyclerViewSelectionItems.setHasFixedSize(true) + recyclerViewSelectionItems.adapter = adapter } } - private val internalOnItemSelectedListener: OnItemSelectedListener = { item, position -> + private fun updateSheetHeight(viewHeight: Int) { + rootLayout.layoutParams = rootLayout.layoutParams + .apply { height = viewHeight } + } + + private val onItemSelectedListener: OnItemSelectedListener = { item, position -> dismiss() onItemClickListener?.invoke(item, position) } + private val onSearchClickListener = View.OnClickListener { + (dialog as? BottomSheetDialog)?.run { + behavior.state = BottomSheetBehavior.STATE_EXPANDED + } + updateSheetHeight(screenHeight) + viewSwitcherHeader.displayedChild = 1 + searchView.isIconified = false + } + + private val onSearchCloseListener = SearchView.OnCloseListener { + updateSheetHeight(ViewGroup.LayoutParams.WRAP_CONTENT) + viewSwitcherHeader.displayedChild = 0 + true + } + + private val onSearchQueryTextListener = object : SearchView.OnQueryTextListener { + override fun onQueryTextChange(newText: String?): Boolean { + adapter.search(newText) + return true + } + + override fun onQueryTextSubmit(query: String?): Boolean { + adapter.search(query) + return true + } + } + class Builder(context: Context) { private val manager: FragmentManager? = when (context) { is FragmentActivity -> context.supportFragmentManager @@ -66,6 +125,7 @@ class SheetSelection private constructor() : BottomSheetDialogFragment() { private var items: List = emptyList() private var selectedPosition: Int = NO_SELECT private var showDraggedIndicator: Boolean = false + private var searchEnabled: Boolean = false private var listener: OnItemSelectedListener? = null fun theme(@StyleRes themeId: Int) = apply { @@ -93,6 +153,10 @@ class SheetSelection private constructor() : BottomSheetDialogFragment() { this.showDraggedIndicator = show } + fun searchEnabled(enabled: Boolean) = apply { + this.searchEnabled = enabled + } + fun onItemClickListener(listener: OnItemSelectedListener) = apply { this.listener = listener } @@ -105,6 +169,7 @@ class SheetSelection private constructor() : BottomSheetDialogFragment() { putParcelableArrayList(ARGS_ITEMS, ArrayList(items)) putInt(ARGS_SELECTED_POSITION, selectedPosition) putBoolean(ARGS_SHOW_DRAGGED_INDICATOR, showDraggedIndicator) + putBoolean(ARGS_SEARCH_ENABLED, searchEnabled) } onItemClickListener = listener } @@ -124,5 +189,6 @@ class SheetSelection private constructor() : BottomSheetDialogFragment() { private const val ARGS_ITEMS = "SheetSelection:ARGS_ITEMS" private const val ARGS_SELECTED_POSITION = "SheetSelection:ARGS_SELECTED_POSITION" private const val ARGS_SHOW_DRAGGED_INDICATOR = "SheetSelection:ARGS_SHOW_DRAGGED_INDICATOR" + private const val ARGS_SEARCH_ENABLED = "SheetSelection:ARGS_SEARCH_ENABLED" } } \ No newline at end of file diff --git a/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelectionAdapter.kt b/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelectionAdapter.kt index 9987b3a..f654519 100644 --- a/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelectionAdapter.kt +++ b/sheetselection/src/main/java/com/minibugdev/sheetselection/SheetSelectionAdapter.kt @@ -10,11 +10,13 @@ import kotlinx.android.synthetic.main.row_selection_item.* typealias OnItemSelectedListener = (item: SheetSelectionItem, position: Int) -> Unit class SheetSelectionAdapter( - private val items: List, + private val source: List, private val selectedPosition: Int, private val onItemSelectedListener: OnItemSelectedListener? ) : RecyclerView.Adapter() { + private var items: List = source + override fun getItemCount() = items.size override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { @@ -27,13 +29,31 @@ class SheetSelectionAdapter( override fun onBindViewHolder(holder: ViewHolder, position: Int) { holder.onBindView( - items[position], - position, - position == selectedPosition, - onItemSelectedListener + item = items[position], + position = position, + selected = position == selectedPosition, + onItemSelectedListener = onItemSelectedListener ) } + fun search(keyword: String?) { + if (keyword.isNullOrBlank()) { + updateItems(source) + } else { + val searchResult = source.filter { it.value.contains(keyword, true) } + if (searchResult.isEmpty()) { + updateItems(listOf(SheetSelectionItem("search_not_found", "Search not found."))) + } else { + updateItems(searchResult) + } + } + } + + private fun updateItems(items: List) { + this.items = items + notifyDataSetChanged() + } + class ViewHolder(override val containerView: View) : RecyclerView.ViewHolder(containerView), LayoutContainer { diff --git a/sheetselection/src/main/res/drawable/ic_search.xml b/sheetselection/src/main/res/drawable/ic_search.xml new file mode 100644 index 0000000..affc7ba --- /dev/null +++ b/sheetselection/src/main/res/drawable/ic_search.xml @@ -0,0 +1,9 @@ + + + diff --git a/sheetselection/src/main/res/layout/dialog_sheet_selection.xml b/sheetselection/src/main/res/layout/dialog_sheet_selection.xml index 7c0a147..a0f7829 100644 --- a/sheetselection/src/main/res/layout/dialog_sheet_selection.xml +++ b/sheetselection/src/main/res/layout/dialog_sheet_selection.xml @@ -2,6 +2,7 @@ - + android:measureAllChildren="false"> + + + + + + + + + + Date: Mon, 16 Mar 2020 16:10:56 +0700 Subject: [PATCH 2/3] Update README.md --- README.md | 4 +++- .../sheetselection/demo/MainActivity.kt | 4 +++- screenshot/ss_1.png | Bin 23969 -> 0 bytes screenshot/ss_1_0.0.2.png | Bin 0 -> 29036 bytes 4 files changed, 6 insertions(+), 2 deletions(-) delete mode 100644 screenshot/ss_1.png create mode 100644 screenshot/ss_1_0.0.2.png diff --git a/README.md b/README.md index 26355aa..728a3c1 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ dependencies { ``` ## How to use -![Sheet Selection](screenshot/ss_1.png) +![Sheet Selection](screenshot/ss_1_0.0.2.png) ``` kotlin val items = listOf( @@ -37,6 +37,7 @@ SheetSelection.Builder(context) .items(items) .selectedPosition(2) .showDraggedIndicator(true) + .searchEnabled(true) .onItemClickListener { item, position -> // DO SOMETHING } @@ -47,6 +48,7 @@ SheetSelection.Builder(context) - Set items by `Builder.items(List)`. - Set selected item by `Builder.selectedPosition(Int)`. default is `SheetSelection.NO_SELECT` - Show dragged indicator by `Builder.showDraggedIndicator(Boolean)`. default is `false` +- Set search enabled by `Builder.searchEnabled(Boolean)`. default is `false` - Set custom theme by `Builder.theme(@StyleRes)`. - To handle the item click listener by `Builder.onItemClickListener()`. diff --git a/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt b/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt index ed72eef..5dee714 100644 --- a/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt +++ b/app/src/main/java/com/minibugdev/sheetselection/demo/MainActivity.kt @@ -17,7 +17,9 @@ class MainActivity : AppCompatActivity() { SheetSelectionItem("1", "Item #1", R.drawable.ic_extension), SheetSelectionItem("2", "Item #2", R.drawable.ic_nature), SheetSelectionItem("3", "Item #3", R.drawable.ic_fingerprint), - SheetSelectionItem("4", "Item #4", R.drawable.ic_face) + SheetSelectionItem("4", "Item #4", R.drawable.ic_face), + SheetSelectionItem("5", "Item #5", R.drawable.ic_extension), + SheetSelectionItem("6", "Item #6", R.drawable.ic_fingerprint) ) SheetSelection.Builder(this) diff --git a/screenshot/ss_1.png b/screenshot/ss_1.png deleted file mode 100644 index 4c9b194fcf69441be533a43bf5e402f5683c7b01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23969 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 diff --git a/screenshot/ss_1_0.0.2.png b/screenshot/ss_1_0.0.2.png new file mode 100644 index 0000000000000000000000000000000000000000..9a910576475e70224eeb037c6fc63c011a0c2c08 GIT binary patch literal 29036 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�R>3;galP63f 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 Date: Mon, 16 Mar 2020 16:11:03 +0700 Subject: [PATCH 3/3] Pump up version to 0.0.2 --- sheetselection/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sheetselection/build.gradle b/sheetselection/build.gradle index f3ba0a2..86eb736 100644 --- a/sheetselection/build.gradle +++ b/sheetselection/build.gradle @@ -13,7 +13,7 @@ android { minSdkVersion 17 targetSdkVersion 29 versionCode 1 - versionName "0.0.1" + versionName "0.0.2" } buildTypes {