1.dropdowm mode:
使用的是ListPopupWindow:
设置ListPopupWindow的ListView的OnItemClickListener:
public DropdownPopup(
Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
setAnchorView(Spinner.this);
setModal(true);
setPromptPosition(POSITION_PROMPT_ABOVE);
setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v, int position, long id) {//调用该方法后,requestLayout(),重新布局将调用Spinner的layout()方法,方法中将根据position,把selected item的view从ListView中取出,addView到Spinner中。因为执行layout时,该List View已经从PupupWindow中解绑,窗口也移除了。Spinner算是废物利用,但是不明白的是,为什么PopupWindow用一次ListView就不用了。
Spinner.this.setSelection(position);
if (mOnItemClickListene