У меня есть несколько вопросов, с укладкой на блеснестиля вертушки выпадающего список
- Мне нужно изменить вытяжку из вращателя (выбранного вида) , когда пользователь открывает выпадающий список (я попробовал несколько селекторов с разные состояния, но ничего не работает должным образом)
- Я не могу изменить цвет текста в выпадающем списке (я могу изменить цвет , но мне нужен другой цвет для выбранного значения), вы можете увидеть больше подробно в ссылках ниже ,
- Я не могу удалить разделители из выпадающего списка.
Я не хочу использовать пользовательский макет с кнопкой и списком, чтобы имитировать функциональность счетчика (но если нет решения, я сделаю это).
style.xml
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppBaseTheme" parent="@android:style/Theme.Black.NoTitleBar.Fullscreen">
<item name="android:background">@android:color/transparent</item>
<item name="android:windowBackground">@android:color/white</item>
<item name="android:colorBackground">@android:color/white</item>
<item name="android:dropDownSpinnerStyle">@style/SpinnerTheme</item>
</style>
<style name="SpinnerAppTheme" parent="android:Widget.Holo.Light.Spinner">
<item name="android:background">@drawable/spinner_background_holo_light</item>
<item name="android:dropDownSelector">@drawable/list_selector_holo_light</item>
<item name="android:dropDownListViewStyle">@style/mySpinnerStyle</item>
</style>
<style name="mySpinnerStyle" parent="android:Widget.ListView.DropDown">
<item name="android:divider">@null</item>
<item name="android:dividerHeight">0px</item>
</style>
<style name="Theme_Dialog_Translucent" parent="android:Theme.Dialog">
<item name="android:windowBackground">@null</item>
<item name="android:background">@android:color/white</item>
<item name="android:windowTitleStyle">@style/dialog_title_style</item>
</style>
<style name="Theme_Dialog_Measurment_Data_Dialog" parent="android:Theme.Dialog">
<item name="android:windowBackground">@null</item>
<item name="android:background">@color/general_background_color</item>
<item name="android:windowTitleStyle">@style/dialog_title_style</item>
</style>
<style name="dialog_title_style" parent="android:Widget.TextView">
<item name="android:textColor">@android:color/black</item>
</style>
<Spinner
android:id="@+id/res_spinner"
android:layout_width="0dp"
android:layout_height="30dp"
android:layout_weight="60"
android:background="@drawable/ref_spinner_selector"
android:dropDownVerticalOffset="1dp"
android:dropDownWidth="60dp"
android:gravity="center"
android:popupBackground="@null"
android:spinnerMode="dropdown"/>
how the spinner needs to be look like
how the spinner looks like now
Благодаря
Update : если кто-то будет иметь проблемы, чтобы настроить SPINNERS
я управляю, чтобы исправить все проблемы с использованием ListPopupWindow
private void initPopup()
{
_lp = new ListPopupWindow(getActivity());
_lp.setAnchorView(_resTitle);
ColorDrawable cd = new ColorDrawable(getResources().getColor(android.R.color.transparent));
_lp.setBackgroundDrawable(cd);
_lp.setOnDismissListener(new OnDismissListener()
{
@Override
public void onDismiss()
{
_resTitle.setSelected(false);
}
});
_listPopupAdapter = new DataSetListAdapter(getActivity(), _resData);
_lp.setAdapter(_listPopupAdapter);
}
OnClick
случай R.id.res_title:
if (!_lp.isShowing())
{
_resTitle.setSelected(true);
_lp.setOnItemClickListener(this);
_lp.show();
_lp.getListView().setDivider(null);
_lp.getListView().setDividerHeight(0);
}
else
{
_resTitle.setSelected(false);
_lp.dismiss();
}
break;
Спасибо за ответ, но мне удалось это сделать с помощью ListPopupWindow –
пример был таким же всплывающим меню. –