Материал Спиннер
allprojects {
repositories {
maven {
url 'https://s01.oss.sonatype.org/content/repositories/releases/'
}
}
}
dependencies {
implementation 'com.gitee.chinasoft_ohos:MaterialSpinner:1.0.0'
......
}
Проект можно запустить напрямую под sdk6 и DevEco Studio 2.2 Beta1. Если не удаётся запустить, удалите файлы проекта .gradle, .idea, build, gradle, build.gradle и создайте новый проект с соответствующей версией, затем скопируйте новые файлы проекта в корневой каталог.
Компонент в основном состоит из Text и ListContainer в форме PopupDialog.
Исходный открытый исходный код был переписан Text, а текущий проект openharmony переписал DependentLayout, который содержит Text.
Добавьте раскрывающийся список в XML:
<com.jaredrummler.materialspinner.MaterialSpinner
ohos:id="$+id:spinner"
ohos:width="match_parent"
ohos:height="match_content"
ohos:min_height="36vp"
ohos:bottom_margin="$float:fab_margin"
ohos:left_margin="$float:fab_margin"
ohos:end_margin="$float:fab_margin"
ohos:top_margin="$float:fab_margin"
app:ms_dropdown_max_height="360vp"
app:ms_dropdown_height="360vp"
app:ms_background_selector_press="#FF0000"
app:ms_background_selector_normal="#00FF00"
app:ms_background_color="#FFFFFF"
app:ms_text_color="$color:black"
app:ms_hint_color="$color:black"
app:ms_arrow_tint="#000000"
app:ms_hide_arrow="false"
app:ms_hint=""
app:ms_padding_top="22"
app:ms_padding_left="50"
app:ms_padding_bottom="22"
app:ms_padding_right="30"
app:ms_popup_padding_top="0"
app:ms_popup_padding_left="26"
app:ms_popup_padding_bottom="0"
app:ms_popup_padding_right="0" />
Добавьте элементы списка в раскрывающийся список и отобразите их после нажатия:
MaterialSpinner spinner = (MaterialSpinner) findComponentById(ResourceTable.Id_spinner);
spinner.setItems("Ice Cream Sandwich", "Jelly Bean", "KitKat", "Lollipop", "Marshmallow");
spinner.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener<String>() {
@Override
public void onItemSelected(MaterialSpinner view, int position, long id, String item) {
DirectionalLayout toastLayout = (DirectionalLayout) LayoutScatter.getInstance(MainAbilitySlice.this)
.parse(ResourceTable.Layout_layout_toast, null, false);
Text text = (Text) toastLayout.findComponentById(ResourceTable.Id_msg_toast);
text.setText("Clicked " + item);
text.setTextAlignment(TextAlignment.LEFT);
text.setMultipleLine(true);
text.setMaxTextLines(2);
text.setTruncationMode(Text.TruncationMode.ELLIPSIS_AT_END);
new ToastDialog(MainAbilitySlice.this)
.setComponent(toastLayout)
.setSize(DirectionalLayout.LayoutConfig.MATCH_CONTENT, DirectionalLayout.LayoutConfig.MATCH_CONTENT)
.setAlignment(LayoutAlignment.BOTTOM | LayoutAlignment.HORIZONTAL_CENTER)
.setDuration(5000)
.setOffset(0, 60)
.show();
}
});
Пользовательский MaterialSpinner может добавлять пользовательские атрибуты, конкретные доступные атрибуты следующие:
name | type | info |
---|---|---|
ms_arrow_tint | color | sets the color on the drop-down arrow |
ms_hide_arrow | boolean | set to true to hide the arrow drawable |
ms_background_color | color | set the background color for the spinner and drop-down |
ms_background_selector | integer | set the background resource for the dropdown items |
ms_text_color | color | set the text color |
ms_dropdown_max_height | dimension | set the max height of the drop-down |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )