Skip to content

Commit dd46b47

Browse files
committed
Improve custom view and update arrow up and down on time base on user select
1 parent d80651b commit dd46b47

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
3+
android:layout_width="match_parent"
4+
android:layout_height="wrap_content"
5+
android:ellipsize="marquee"
6+
android:gravity="center"
7+
android:orientation="vertical"
8+
android:singleLine="true" />

smartmaterialspinner/src/main/java/com/chivorn/smartmaterialspinner/SmartMaterialSpinner.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -716,6 +716,7 @@ public boolean performClick() {
716716
if (spinnerEventsListener != null) {
717717
spinnerEventsListener.onSpinnerOpened(SmartMaterialSpinner.this);
718718
}
719+
invalidate();
719720
return true;
720721
}
721722
} else if (isSpinnerEmpty()) {
@@ -727,6 +728,7 @@ public boolean performClick() {
727728
if (spinnerEventsListener != null) {
728729
spinnerEventsListener.onSpinnerOpened(this);
729730
}
731+
invalidate();
730732
return super.performClick();
731733
}
732734

@@ -1497,8 +1499,8 @@ public void setAdapter(SpinnerAdapter adapter) {
14971499

14981500
public void setItem(@NonNull List<T> item) {
14991501
this.item = item;
1500-
ArrayAdapter<T> adapter = new ArrayAdapter<>(getContext(), R.layout.smart_material_spinner_item_layout, item);
1501-
adapter.setDropDownViewResource(R.layout.smart_material_spinner_dropdown_item_layout);
1502+
ArrayAdapter<T> adapter = new ArrayAdapter<>(getContext(), itemView, item);
1503+
adapter.setDropDownViewResource(dropdownView);
15021504
setAdapter(adapter);
15031505
configDropdownWidthAfterDataReady();
15041506
invalidate();
@@ -1657,6 +1659,7 @@ private void updateSpinnerItemStyle(ViewGroup parent, TextView textView, boolean
16571659
if (isDropDownView) {
16581660
textView.setTextColor(itemListHintColor);
16591661
textView.setBackgroundColor(itemListHintBackground);
1662+
textView.setPadding(textView.getPaddingLeft(), dpToPx(12), textView.getPaddingRight(), dpToPx(12));
16601663
} else {
16611664
textView.setTextColor(SmartMaterialSpinner.this.isEnabled() ? hintColor : disabledColor);
16621665
measureItemText(textView.getText().toString());

0 commit comments

Comments
 (0)