我在我的项目中使用Butter Knife以及UI的Material Design Libraries。
尝试使用Material Design Library创建按钮时,我会得到一个“类别转换异常”#39;因为使用了Butter Knife。
有没有办法解决这个问题?
MainActivity.Java
@Bind(R.id.switch1) Switch switch;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ButterKnife.bind(this);
}
XML Switch Layout
<com.gc.materialdesign.views.Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/switch1"
android:layout_centerHorizontal="true" />
错误
Caused by: java.lang.RuntimeException: Unable to bind views for com.example.MainActivty
Caused by: java.lang.ClassCastException:com.gc.materialdesign.views.Switch cannot be cast to android.widget.Switch
答案 0 :(得分:1)
您输入了错误的Switch
- 而不是导入android.widget.Switch
,您需要导入com.gc.materialdesign.views.Switch
并在定义switch
变量时使用该类。
答案 1 :(得分:0)
删除行
import android.widget.Switch;
并将其替换为
import com.gc.materialdesign.views.Switch;
您只是选择导入错误的Switch
类。