어댑터와 함께 Picasso를 사용하는 동안이 오류가 발생했습니다. 나는 정제에서 잘 작동하는 동안 휴대폰에서 메모리 부족 오류가 발생하기 때문에 Picasso를 사용합니다.클래스 캐스팅 예외 : RelativeLayout을 com.a.a.ba로 캐스팅 할 수 없습니다.
피카소를 잘못 사용하고 있습니까? 오류가 표시되지 않기 때문입니다.
public class ViewPagerAdapter extends PagerAdapter {
// Declare Variables
Context context;
int[] flag;
String[] rank;
LayoutInflater inflater;
public ViewPagerAdapter(Context context, int[] flag, String[] rank) {
this.context = context;
this.flag = flag;
this.rank = rank;
}
@Override
public int getCount() {
return rank.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((RelativeLayout) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imgflag;
inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = inflater.inflate(R.layout.app3x, container, false);
// Locate the ImageView in viewpager_item.xml
// imgflag = (ImageView) itemView.findViewById(R.id.items);
// Capture position and set to the ImageView
// imgflag.setImageResource(flag[position]);
Picasso.with(context).load(flag[position]).fit().into((Target) itemView);
// Add viewpager_item.xml to ViewPager
((ViewPager) container).addView(itemView);
return itemView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// Remove viewpager_item.xml from ViewPager
((ViewPager) container).removeView((RelativeLayout) object);
}
}
내 XML :
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical"
android:background="@color/White">
<ImageView
android:id="@+id/items"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:background="@color/White"
android:scaleType="fitXY" />
</RelativeLayout>
포스트에게 로그 캣를 시도? 프로젝트 정리하기 - 클래스 캐스팅 예외는 상대 레이아웃에서 나타나는 이상한 문제입니다. – Razgriz
hare에 로그를 붙여 넣을 수 있습니까? –
나는이 코드에 위의 코드가 있다고 믿는다 : 'Picasso.with (context) .load (flag [position]). fit(). ((target) itemView); 당신은'RelativeLayout'을'Target'으로 캐스팅하고 있습니다. –