在做评分时用到了ratingbar,当用户评分时把评分保存在数据库中,但是另我百思不得其解的是每次评分完后数据好像没有保存,通过跟踪数据库时发现,原来ratingbar在setProgress(int socre)的时候会调用OnRatingBarChangeListener的onRatingChanged()函数。
我出现的错误在于我在评分判断后把数据保存进了数据库,但是由于在做demo的时候发现评分后ratingbar的状态会保留,所以在下一次评分前我清除了状态setProgress(0),而它又调用onRatingChanged()把数据库中的值改成了初始值,结果就像是根本没有保存状态一样。
本文探讨了在使用RatingBar组件时遇到的问题:评分状态未能正确保存到数据库中。作者详细解释了这一现象的原因在于RatingBar的setProgress方法会触发OnRatingBarChangeListener的onRatingChanged回调,进而覆盖之前保存的数据。
3511

被折叠的 条评论
为什么被折叠?



