Android spinner点击相同选项处理无法响应事件问题,自定义spinner
2017-12-06 15:16
417 查看
解决办法:自定义一个Spinner控件,代码如下:
[java] view
plain copy
import android.content.Context;
import android.util.AttributeSet;
import android.widget.Spinner;
public class MySpinner extends Spinner {
public MySpinner(Context context) {
super(context);
}
public MySpinner(Context context, AttributeSet attrs) {
super(context, attrs);
eba3
}
public MySpinner(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public void setSelection(int position, boolean animate) {
boolean sameSelected = position == getSelectedItemPosition();
super.setSelection(position, animate);
if (sameSelected) {
getOnItemSelectedListener().onItemSelected(this, getSelectedView(),
position, getSelectedItemId());
}
}
@Override
public void setSelection(int position) {
boolean sameSelected = position == getSelectedItemPosition();
super.setSelection(position);
if (sameSelected) {
getOnItemSelectedListener().onItemSelected(this, getSelectedView(),
position, getSelectedItemId());
}
}
}
在自己代码里面使用MySpinner控件就可以了
[java] view
plain copy
import android.content.Context;
import android.util.AttributeSet;
import android.widget.Spinner;
public class MySpinner extends Spinner {
public MySpinner(Context context) {
super(context);
}
public MySpinner(Context context, AttributeSet attrs) {
super(context, attrs);
eba3
}
public MySpinner(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public void setSelection(int position, boolean animate) {
boolean sameSelected = position == getSelectedItemPosition();
super.setSelection(position, animate);
if (sameSelected) {
getOnItemSelectedListener().onItemSelected(this, getSelectedView(),
position, getSelectedItemId());
}
}
@Override
public void setSelection(int position) {
boolean sameSelected = position == getSelectedItemPosition();
super.setSelection(position);
if (sameSelected) {
getOnItemSelectedListener().onItemSelected(this, getSelectedView(),
position, getSelectedItemId());
}
}
}
在自己代码里面使用MySpinner控件就可以了
相关文章推荐
- Android spinner点击相同选项处理无法响应事件问题,暴力反射
- Android中Spinner控件关于二次点击同一item无响应事件解析及处理方法
- android 自定义listview无法响应点击事件OnItemClickListener的原因
- android 自定义listview无法响应点击事件OnItemClickListener
- android 自定义listview无法响应点击事件OnItemClickListener的原因
- android 自定义listview无法响应点击事件OnItemClickListener
- Android--焦点问题-ListView中item及其子控件无法响应点击事件
- android 自定义listview无法响应点击事件OnItemClickListener
- Android 隐藏ViewPager之后,控件点击事件无法响应的问题
- android 自定义listview无法响应点击事件OnItemClickListener
- android 自定义listview无法响应点击事件OnItemClickListener
- android 自定义ListView 使其带单选框按钮,并解决item点击不响应的问题
- 隐藏自定义的tabbar之后,push到B视图,B视图的键盘工具条无法响应点击事件
- Android中自定义ListView无法响应OnItemClickListener中的onItemClick方法问题解决方案
- Android中自定义ListView无法响应OnItemClickListener中的onItemClick方法问题解决方案<转>
- android中点击CheckBox时无法响应ListView的Item的点击事件
- Android中自定义ListView无法响应OnItemClickListener中的onItemClick方法问题解决方案
- android 自定义ListView 使其带单选框按钮,并解决item点击不响应的问题
- Android--自定义带点击事件监控的Spinner控件
- Android中自定义ListView无法响应OnItemClickListener中的onItemClick方法问题解决方案