我正在尝试在我的应用中制作自定义图库。我创建了一个扩展Gallery的类,但是当我尝试从我的xml中获取库时,我得到ClassCastException
以下是我正在尝试做的事情
MyCustomGallery mcg = (MyCustomGallery )findViewById(R.id.gallery);;
d.setAdapter(new MyAdapter(getApplicationContext(), images));
这是我的自定义图库类
public class MyCustomGallery extends Gallery {
public MyCustomGallery (Context context) {
super(context);
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
return super.onFling(e1, e2, 100, 100);
}
}
,这是我的xml:
<Gallery android:id="@+id/gallery"
android:background="#000000"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:spacing="20dp"
/>
我做错了什么?
提前致谢。
答案 0 :(得分:4)
您已在xml中将其声明为普通图库,您需要将其声明为自定义图库。
<com.yourPackage.MyCustomGallery android:id="@+id/gallery"
android:background="#000000"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:spacing="20dp"
/>
请注意,您必须在xml中的声明中包含完整的包名称,否则它将无法正常工作。