在listview中我定义了动态的按钮,如果我点击按钮,改变了按钮的背景以及按钮上面的字体,在程序下次启动的时候,载入的是改变过的按钮的背景以及按钮上的文字,--现在第一个问题是在listview的item中只是定义了一个按钮,也就是只有一个按钮ID,但是在listview中是有多个按钮的,不过用的是一个ID,
我想改变记录多个按钮的状态,该怎么弄呢??

解决方案 »

  1.   

    在activity内部做一个全局的list(该数据程序退出时需要保存起来)来记录被点过的option。
    getview()显示按钮的时候对按钮加click监听,并且将对应的option传入。
    当点击事件触发的时候,将其记录到activity的全局list内。
    在程序退出的时候,将这个list的数据存到本地文件。
    当程序启动的时候重新载入该list数据。
    然后再刷新listview的时候根据记录的option来画出是否已经点过的按钮
      

  2.   

    这个判断就是用楼上所说的全局LIST来实现的,就是要根据你LISTVIEW加载的数据来的了。你LISTVIEW里面的数据是些什么?可以根据里面的数据来判断和保存。
      

  3.   

    适配器中写的getview来设置每个item数据,getview有个参数position,可以知道是哪一列的
      

  4.   


    在适配器中getview方法一次性绘制好了,现在我点击按钮的时候,我获得不了按钮所在的列,老哥有联系方式么
      

  5.   

    重写按钮监听事件,自己定义监听事件,构造函数的参数追加一个参数,即position的值,将这个值传进去,就能保存,记录了。