将背景颜色添加到BlackBerry中的列表字段后,突出显示颜色消失

时间:2011-11-29 11:02:23

标签: blackberry colors background highlight listfield

我已经设法在ListField中创建列表项,并且能够使用navigationClick方法识别单击了哪个项目。现在我通过覆盖paint方法为ListField添加了不同的背景。我基本上给Listview提供斑马纹以区分列表项。但现在我无法查看精彩集锦。但是当我向下滚动列表并单击时,它会识别该项目。所以任何想法哪里出错或如何改变高光颜色?

致力于: 装置:8520 操作系统:5.0

提前致谢

1 个答案:

答案 0 :(得分:1)

正如jprofitt指出的那样,你应该使用drawListRow来更好地利用ListField。

对于焦点问题,ListField将为您处理焦点绘图。它将在调用绘制代码之前绘制,因此为了避免擦除焦点颜色,您需要停止为所选行绘制斑马条纹。如果将continue逻辑添加到循环顶部,您将再次开始看到选择器。

if(x == getSelectedIndex()) { continue; }

您还需要更新绘画逻辑,以使用与蓝色高亮颜色形成鲜明对比的颜色,但仅适用于所选行。