Android回收站视图LogCat:找不到方法

7

我使用了Android支持库中的RecyclerView。在三星Galaxy S2上运行Android 4.1.2(API 16)时,一切都很好,但是在Logcat中我看到以下消息:

03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.isUpdated ()Z from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.isUpdated, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16775: Landroid/support/v7/widget/RecyclerView$ViewHolder;.isUpdated ()Z
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x0031
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.flagRemovedAndOffsetPosition (IIZ)V from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.flagRemovedAndOffsetPosition, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16759: Landroid/support/v7/widget/RecyclerView$ViewHolder;.flagRemovedAndOffsetPosition (IIZ)V
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x0053
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.isRemoved ()Z from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.isRemoved, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16772: Landroid/support/v7/widget/RecyclerView$ViewHolder;.isRemoved ()Z
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x0058
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.clearPayload ()V from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.clearPayload, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16754: Landroid/support/v7/widget/RecyclerView$ViewHolder;.clearPayload ()V
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x007c
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.isAdapterPositionUnknown ()Z from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.isAdapterPositionUnknown, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16768: Landroid/support/v7/widget/RecyclerView$ViewHolder;.isAdapterPositionUnknown ()Z
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x0086
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.offsetPosition (IZ)V from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.offsetPosition, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16777: Landroid/support/v7/widget/RecyclerView$ViewHolder;.offsetPosition (IZ)V
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x00ad
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.shouldIgnore ()Z from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.shouldIgnore, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16786: Landroid/support/v7/widget/RecyclerView$ViewHolder;.shouldIgnore ()Z
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x00b9
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.setFlags (II)V from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.setFlags, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16782: Landroid/support/v7/widget/RecyclerView$ViewHolder;.setFlags (II)V
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x00d4
03-24 I/dalvikvm: DexOpt: illegal method access (call Landroid/support/v7/widget/RecyclerView$ViewHolder;.addChangePayload (Ljava/lang/Object;)V from Lnet/mytest/TransactionsAdapter$TransactionsAdapterViewHolder;)
03-24 I/dalvikvm: Could not find method android.support.v7.widget.RecyclerView$ViewHolder.addChangePayload, referenced from method net.mytest.TransactionsAdapter$TransactionsAdapterViewHolder.access$super
03-24 W/dalvikvm: VFY: unable to resolve virtual method 16751: Landroid/support/v7/widget/RecyclerView$ViewHolder;.addChangePayload (Ljava/lang/Object;)V
03-24 D/dalvikvm: VFY: replacing opcode 0x6f at 0x00dc

我需要担心这些消息吗?

1个回答

0

看看这个答案https://dev59.com/O3XZa4cB1Zd3GeqPAv9o#18600156

基本上,你没有调用正确的方法。你需要调用相应的“支持”方法。

例如,从v14调用getActionBar()而不是从v7调用getSupportActionBar()将导致此问题。

确保调用支持方法,这个错误就会消失。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接