今天看啥  ›  专栏  ›  tran_sient

安卓Android Studio 下拉列表设置当前选中项

tran_sient  · CSDN  ·  · 2019-11-24 22:18

文章预览

setSelection

感悟:
遇到问题,首先要学会思考,从不同角度去解决它。最后你会发现,答案其实就是一句话的事。现在对此颇有感触,也许前人也是经历了无数的弯路去试探,最终才给了我们正确的答案。我今天也当了一次试探者。
正题:
spinner可以自定义样式:

adapter = new ArrayAdapter<String>(getApplicationContext(),R.layout.my_spinner_item,strings);
        adapter.setDropDownViewResource(R.layout.dropdown_item);
        select_chapter.setAdapter(adapter);
  • 1
  • 2
  • 3

里面两个layout都是我自己写的,一个是下拉列表的样式,一个是每一个子项的样式。列表的样式我是设计的一个TextView,然而就是它给我带来了很多困扰。设置了textview之后呢,它会自动显示当前选中项的值。
问题:
我最近在写一个小说应用,问题来了,我点下一章切换章节,而下拉列表(即目录)上面的文字仍然是上一章的,因为上一章才是我的选中项。也就是说我们要实现这样的功能:点击按钮,改变我的下拉列表的当前选中项。
我的尝试:
给样式文件中的TextView设置id,在主活动中通过findViewById获取它,然后点击监听时改变TextView的值。结果发现其实我根本连获取都获取不到这个id,始终为null。
解决:
spinnerId.setSelection(Index);
其中Index为正整数。

………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览