2016-11-26 106 views
-2

当我使用Android Studio模拟器(Nexus 4 API 23)来模拟我制作的应用程序时,它完美地工作。但是,当我用我的手机(三星SM-G3502T采用Android 4.3 API 18)来模拟相同的应用程序时,它会停留在该代码波纹管:代码适用于Android Studio模拟器,但不适用于我的Android手机

if(activity instanceof CategoriaListaActivity) { 
     boolean isSelected = (categoriaSelectedId == item.getCodigo()); 
     ((CategoriaViewHolder)holder).getNomeTextView().setTextColor(isSelected ? activity.getColor(R.color.colorPrimaryDark) : activity.getColor(R.color.colorAccent)); 
    } 

logcat的说:

E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.Restarter.getActivities 
W/dalvikvm: VFY: unable to resolve instanceof 2042 (Landroid/util/ArrayMap;) in Lcom/android/tools/fd/runtime/Restarter; 
D/dalvikvm: VFY: replacing opcode 0x20 at 0x006f 
I/dalvikvm: Could not find method android.app.Activity.getColor, referenced from method catalog.raulfmiranda.com.catalog.ui.adapter.CategoriaRecyclerAdapter.onBindViewHolder 
W/dalvikvm: VFY: unable to resolve virtual method 58: Landroid/app/Activity;.getColor (I)I 
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0058 
I/dalvikvm: Could not find method android.app.Activity.getColor, referenced from method catalog.raulfmiranda.com.catalog.ui.adapter.CategoriaRecyclerAdapter.onBindViewHolder 
W/dalvikvm: VFY: unable to resolve virtual method 58: Landroid/app/Activity;.getColor (I)I 
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0067 
D/AndroidRuntime: Shutting down VM 
W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41a7a8c8) 
E/AndroidRuntime: FATAL EXCEPTION: main 
        java.lang.NoSuchMethodError: android.app.Activity.getColor 
         at catalog.raulfmiranda.com.catalog.ui.adapter.CategoriaRecyclerAdapter.onBindViewHolder(CategoriaRecyclerAdapter.java:52) 
         at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5825) 

哪有我修复它?

+1

有关getCount的文档说明? – Selvin

回答

0

您正在调用API> = 23(documentation)中的方法,但您的手机只有可用的弃用方法(documentation)。为了解决这个问题,你应该使用support-v4库中的ContextCompat.getColor(Context, int)

+0

取而代之的是偶然的颜色,我决定有机会以粗体和斜体格式。它现在可以使用:((CategoriaViewHolder)持有者).getNomeTextView()。setTypeface(null,Typeface.BOLD_ITALIC); –

0

您使用需要API 23以上和呼叫模拟器上测试时具有API 23日确定的,但你没有它较低的API

这是一个需要API 23

通话
activity.getColor(int id); 
相关问题