首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

避免在setAdapter之后自动调用微调器的onItemSelected

在Android开发中,setAdapter方法用于设置适配器,而onItemSelected方法是微调器(Spinner)的一个回调方法。当我们调用setAdapter方法后,如果不做任何处理,会自动触发微调器的onItemSelected方法,这可能会导致一些意外的结果。

为了避免在setAdapter之后自动调用微调器的onItemSelected方法,我们可以采取以下几种方法:

  1. 使用一个标志位来控制onItemSelected方法的执行。在调用setAdapter之前,将标志位设置为false,然后在setAdapter之后,再将标志位设置为true。在onItemSelected方法中,先判断标志位的值,如果为true,则执行相应的逻辑,否则不执行任何操作。
  2. 在调用setAdapter之前,将微调器的选择监听器(OnItemSelectedListener)设置为null,然后在setAdapter之后,再将选择监听器重新设置回去。这样,在setAdapter之后,不会触发onItemSelected方法。
  3. 使用post方法延迟执行onItemSelected方法。在setAdapter之后,通过Handler的post方法,将onItemSelected方法的执行延迟一段时间,以确保setAdapter完成后再执行onItemSelected方法。

以上是避免在setAdapter之后自动调用微调器的onItemSelected方法的几种常见方法。根据具体的需求和场景,选择适合的方法来解决这个问题。

(以上答案仅供参考,不涉及任何云计算品牌商的推荐)

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

最好用Android省市区三级联动选择效果

Android省市区选择三级联动效果,一个不大不小功能,就算你做过,但是没有相关代码直接写,也要花掉你至少半天时间。 下面我写出我实现过程(思路绝对清晰)。 先上效果图 ?...一、准备数据 我是用本地json数据(走网络的话太慢,每次都要请求),放在asserts中。...) { provinceList.add(province.getName()); } // 显示省份数据 spProvince.setAdapter(new ArrayAdapter...parent) { } }); 四、高德地图获取当前城市 调用了高德地图,抽象成了BaseLocationActivity,用时候只需要继承自它,然后实现抽象方法LocationResult...模拟上获取不到数据,所以没有显示,真机上是可以正常获取数据 以上就是本文全部内容,希望对大家学习有所帮助。

3.1K40
  • 项目需求讨论 - HyBrid 模式需求改造

    > adapterView) { } }); 然后你就开心跑起了你代码,发现我们刚进去界面,onItemSelected就被调用了一次。...what the fuck,我都还没有进行点击选项,怎么就被调用了。因为Spinner默认显示第一项内容,等于就是选中了第一项,也就会执行一遍onItemSelected方法。...解决方法:调用setOnItemSelectedListener方法前,调用spinner.setSelection(0, false);默认不选中第一个,就OK了。...2.Spinner下拉框中布局,也就是我点了Spinner后,出现让你选择界面的每个item样式很简单,也就是Spinner.setAdapteradapter布局设置为我们自己布局就可以了...webview里面的页面就自动转到了首页中了。同理用户在网页里面的个人中心修改了密码。也是要再次回调我们java方法,把新密码发给我们。

    11210

    android下拉五级菜单联动

    android下拉五级菜单联动 一、问题引出 本人是一个不擅长Android开发,但是这几天在做联通一个服务配件管理系统,做完B/S又要写C/S,老板要求没办法。...最后自己努力下来构造JSON数据格式,其实弄明白感觉很简单,就是并保存你上一级是谁,你下一级是谁就可以了,但是数据库做表没有结构可言很难构造出来有用数据结构。...,因为他键值是固定查询时候不需要条件,我们设置定为factory; System.out.println(UrlUtil.getURLDecoderString(s)...,就先只能这样获取数据了,查询上效率会面一些,但是一般不会分类太多,多的话那就是大项目了,可以事先就存在redis中,用Zset,键值还是键,值还是值就获取更快了。...,内容有点多,可以先运行试试,看看效果或许可以必要时候帮助你一点。 有好解答和疑问可以在下方评论,也可以加我QQ:1402876003. 网页五级下拉菜单联动请在博客里寻找。

    2.5K30

    【Android从零单排系列二十四】《Android视图控件——Gallery》

    前言 小伙伴们,在上文中我们介绍了Android视图组件PopupWindow,本文我们继续盘点,介绍一下视图控件Gallery。 注:GalleryAPI29中已被弃用。...常见方法: setAdapter(SpinnerAdapter adapter):设置Gallery适配器,用于提供数据和视图。...setOnItemSelectedListener(AdapterView.OnItemSelectedListener listener):设置监听,以便在Gallery中项被选中时触发回调。...setOnItemClickListener(AdapterView.OnItemClickListener listener):设置监听,以便在Gallery中项被点击时触发回调。...四 总结 GalleryAndroid平台中已经不再被推荐使用,并且可能会对布局和交互造成一些限制。建议使用RecyclerView或ViewPager等更现代控件来替代Gallery。

    26510

    2014-11-6Android学习------Spinner下拉选择框控件学习(二)---监听事件

    ,接下来总结下并整合下网上大家说比较好内容 Spinner控件学习有以下几点: 1.XML文件中定义 spinnerAdapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item,list> 一种是从资源文件中构造,也就是调用...Spinner没有展开前UI类型 simple_spinner_dropdown_item这是点击圆圈选择方式 2)将Spinner控件和适配器进行绑定 spinner.setAdapter...(spinnerAdapter); 3)使用setOnItemSelectedListener()来设置Spinner点击触发callback函数,有onItemSelected和onNothingSelected...中,我们设置了prompt,根据@stringstrings.xml中查找,prompt内容为“太阳系行星:”我们点击展开Spinner中,我们可以看到最上面增加了提示,如上图所示。

    74420

    RTMP推送端如何调整采集端音量

    好多开发者提到,有些Windows机器或Android手机采集麦克风音频,过小或过大,一般过小居多,还有就是,混音时候,希望背景音音量大小可实时调整,针对这种情况,大牛直播SDK(Github)做了如下设计...Windows平台推送端(以C#为例): /* *设置输入音量, 这个接口一般不建议调用, 一些特殊情况下可能会用, 一般不建议放大音量 *index: 一般是0和1, 如果没有混音只用...Android推送端: /** * 设置输入音量, 这个接口一般不建议调用, 一些特殊情况下可能会用, 一般不建议放大音量 * * @param index: 一般是0和1, 如果没有混音只用...adapter_in_audio_volume.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); in_audio_volume_selector_.setAdapter...setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected

    73400

    Android平台RTMP推送或GB28181设备接入端如何实现采集audio音量放大或缩小?

    我们针对jni层设计如下:/** * 设置输入音量, 这个接口一般不建议调用, 一些特殊情况下可能会用, 一般不建议放大音量 * * @param index: 一般是0和1, 如果没有混音只用0...successful */public native int SmartPublisherSetInputAudioVolume(long handle, int index, float volume);调用逻辑如下...adapter_in_audio_volume.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); in_audio_volume_selector_.setAdapter...setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected...> parent) { } });感兴趣开发者,可以参考实现,需要注意是,audio采集可能不限于麦克风,也可能是第三方数据采集源,所以接口设计时候,尽量考虑

    15220

    Android实现简单用户注册案例

    本文实例为大家分享了Android实现简单用户注册具体代码,供大家参考,具体内容如下 目标: 设计一个用户注册案例。主界面中对输入手机号、密码、性别、爱好和城市后,可以界面二中进行显示。...,使用Bundle对象作为容器,通过调用BundleputString先将数据存储到Bundle中,然后调用IntentputExtras()方法将Bundle存入Intent中,然后获得Intent...后, 调用getExtras()获得Bundle容器,然后调用其getString获取对应数据!...String adapter=new ArrayAdapter<String (this,android.R.layout.simple_list_item_1,city); // spinner.setAdapter..."男性" : "女性"; } } res/values下编写一个:array.xml文件,内容如下: <?xml version="1.0" encoding="utf-8"?

    1.5K50

    【React Native 安卓开发】----侧边栏实现DrawerLayoutAndroid以及第三方框架react-native-side-menu使用【第六篇】

    导航视图一开始屏幕上并不可见,不过可以从drawerPosition指定窗口侧面拖拽出来,并且抽屉宽度可以使用drawerWidth属性来指定。...无论抽屉处于那种状态,都仍然可以调用openDrawer/closeDrawer这两个方法打开和关闭。...on-drag 当拖拽开始时候隐藏软键盘。 onDrawerClose function 每当导航视图(抽屉)被关闭之后调用此回调函数。...onDrawerOpen function 每当导航视图(抽屉)被打开之后调用此回调函数。 onDrawerSlide function 每当导航视图(抽屉)产生交互时候调用此回调函数。...onDrawerStateChanged function 每当抽屉状态变化时调用此回调函数。抽屉可以有3种状态: idle(空闲),表示现在导航条上没有任何正在进行交互。

    6.7K40

    Android开发笔记(三十八)列表类视图

    适配器视图特点有: 1、定义了适配器设置方法setAdapter,以及获取方法getAdapter。适配器用于传入视图展示需要相关数据。...setAdapter : 设置适配器。ListView使用适配器一般继承自BaseAdapter。 setOnItemClickListener : 设置点击事件监听。...该方式无需代码中获取ListView对象,直接调用setListAdapter方法设置适配器,同时实现ListActivity点击方法onListItemClick来响应点击事件。...该方式要从布局文件中获取ListView对象,然后调用该对象setAdapter方法设置适配器,并调用ListView对象setOnItemClickListener方法来设置点击事件监听。...setOnItemClickListener : 设置点击事件监听。 setOnItemLongClickListener : 设置长按事件监听

    2.3K20
    领券