• android:spinner


    Spinner的基本可以参考这里:AndroidGUI03:Spinner的常用技巧

    update:

    项目中有一个界面是要用到spinner的选择然后自动reload ListView的,一开始在onCreate时人为加上listView.setAdapter()来加载数据,现在发现没必要,我spinner 的onItemSelected方法中也有listView.setAdapter() (使用此来出现加载),调试时发现,数据加载了两次,原来在初始时,如果你有spinner,系统会自动调用onItemSelected(并且以第一项为初始),导致与我onCreate的load 重复。

    update:

    想实现一个在之前的listview 的item选定之后跳到View2之后,跳回来的时候listview还是跳之前的spinner对应的item的数据。一开始只是在onItemSelected中把textView的字改掉,然后实现加载时把加载的position也改掉,很快发现这只是一直伪做法,spinner中的选择项显示肯定是没变化的。现在发现android有一个spinner.setSelection(n,true)来选择选定项,使用这个即可。

    之前发现适配完数据后会默认选中第一个,并且这个默认选中第一个的操作并不是马上执行的,而是一段时候后再执行,并触发OnItemSelectedListener事件。可是如果你 使用spinner.setSelection(2,true);之后,系统在初始时就不会执行onItemSelected了。

    [Android]为Spinner填充数据后设置默认值的问题

     

     

    updata:

    发现:
    初始时系统调不调用onItemSelected和你setOnItemSelectedListener(this); setSelection(spinnerItem, true);的顺序有关:

    //调用onItemSelected

    spinner.setOnItemSelectedListener(this);
    spinner.setSelection(spinnerItem, true);

    两句调换则不会调用onItemSelected

  • 相关阅读:
    DOM增删改替换
    DRF框架之序列化器serializers组件详解
    DRF基础操作流程
    DRF框架基础知识储备
    selectors模块
    并发编程——IO模型详解
    高性能web服务器——nginx
    Django中的ORM如何通过数据库中的表格信息自动化生成Model 模型类?
    使用cors完成跨域请求处理
    Flask基础
  • 原文地址:https://www.cnblogs.com/mybkn/p/2529389.html
Copyright © 2020-2023  润新知