android– 无法再转换为LayerDrawable(在升级v7之后)

android– 无法再转换为LayerDrawable(在升级v7之后),第1张

概述我正在使用支持库的最新版本,22.1.1.我曾经喜欢:mRatingBar=(RatingBar)getActivity().findViewById(R.id.rating);LayerDrawablelayer=(LayerDrawable)mRatingBar.getProgressDrawable();但升级后,它在第2行崩溃并出现ClassCastException:android.support.v4.graphic

我正在使用支持库的最新版本,22.1.1.

我曾经喜欢:

mratingbar = (ratingbar) getActivity().findVIEwByID(R.ID.rating);LayerDrawable layer = (LayerDrawable) mratingbar.getProgressDrawable();

但升级后,它在第2行崩溃并出现ClassCastException:

androID.support.v4.graphics.drawable.DrawableWrapperHoneycomb cannot be cast to androID.graphics.drawable.LayerDrawable            at androID.support.v4.app.FragmentManagerImpl.movetoState(FragmentManager.java:973)            at androID.support.v4.app.FragmentManagerImpl.movetoState(FragmentManager.java:1138)            at androID.support.v4.app.BackStackRecord.run(BackStackRecord.java:740)            at androID.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1501)            at androID.support.v4.app.FragmentManagerImpl.run(FragmentManager.java:458)            at androID.os.Handler.handleCallback(Handler.java:725)

我在AndroID 4.2.2上测试.任何提示&解决方法吗?

解决方法:

我遇到了同样的问题.我搜索它,发现,如果我们写

<ratingbarandroID:layout_wIDth="wrap_content"androID:numStars="5"androID:layout_height="wrap_content"/>

在XML文件中.比,AndroID默认将ratingbar转换为androID.support.v7.Widget.AppCompatratingbar而不是androID.Widget.ratingbar.

只需使用以下代码修改您的代码,问题就会得到解决.

<androID.Widget.ratingbar    androID:layout_wIDth="wrap_content"    androID:numStars="5"    androID:layout_height="wrap_content"    />
总结

以上是内存溢出为你收集整理的android – 无法再转换为LayerDrawable(在升级v7之后)全部内容,希望文章能够帮你解决android – 无法再转换为LayerDrawable(在升级v7之后)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1113462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存