我有一个ListView,每个行项都包含一个SeekBar和一个EditText(如下图所示)。我需要根据搜索栏的值更新EditText,如果我有两个窗口小部件引用没有问题,我可以这样做。
我的问题是如何将每个搜索栏与其正确的EditText框相关联?这两个小部件都是我在适配器中充气的视图的一部分。直接引用EditText似乎不是一个好主意,因为Android的视图在ListView中回收。
前进的最佳方式是什么?
答案 0 :(得分:1)
当您显示每对SeekBar和editText时,只需使用
seekBar.setTag(editText);
editText.setTag(seekBar);
当更新内容时使用
seekBar = (SeekBar)editText.getTag();
seekBar.setProgress(...);
答案 1 :(得分:0)
答案 2 :(得分:0)
将OnSeekBarChangeListener
设置为SeekBar
,以便在调用TextView
时更改OnProgressChanged()
的文字。在getView()
中的Adapter
中执行此操作。