【问题标题】:How can I use Database Helper class in CardView Adapter in android如何在 android 的 CardView 适配器中使用 Database Helper 类
【发布时间】:2016-10-20 06:51:30
【问题描述】:

我使用ViewPager 和这个ViewPager 来设置CardView 显示关于人名和人像的卡片,这样我就可以使用适配器中的助手类并将人像设置为卡片并命名,所以如何可以用这个。。 。我是 Android 编程新手,请解决这个问题。

CardPagerAdapter

 private List<CardView> mViews;
private List<String> mData;
private float mBaseElevation;

public CardPagerAdapter() {

    mData = new ArrayList<>();
    mViews = new ArrayList<>();

    for (int i = 0; i < 5; i++) {
        mData.add("");
        mViews.add(null);
    }
}

public float getBaseElevation() {
    return mBaseElevation;
}

@Override
public CardView getCardViewAt(int position) {
    return mViews.get(position);
}

@Override
public int getCount() {
    return mData.size();
}

@Override
public boolean isViewFromObject(View view, Object object) {
    return view == object;
}

@Override
public Object instantiateItem(ViewGroup container, int position) {
    View view = LayoutInflater.from(container.getContext())
            .inflate(R.layout.viewpager_adapter, container, false);
    container.addView(view);
    CardView cardView = (CardView) view.findViewById(R.id.cv);
    ImageView imageView = (ImageView) view.findViewById(R.id.ivPeopelImage);
    imageView.setImageResource(R.drawable.ak_image);

    if (mBaseElevation == 0) {
        mBaseElevation = cardView.getCardElevation();
    }

    cardView.setMaxCardElevation(mBaseElevation * MAX_ELEVATION_FACTOR);
    mViews.set(position, cardView);
    return view;
}

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
    container.removeView((View) object);
    mViews.set(position, null);
}

Viewpage 类

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_alertme);

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

    mViewPager = (ViewPager) findViewById(R.id.viewPager);
    mCardAdapter = new CardPagerAdapter();
    mCardShadowTransformer = new ShadowTransformer(mViewPager, mCardAdapter);
    mViewPager.setAdapter(mCardAdapter);
    mViewPager.setPageTransformer(false, mCardShadowTransformer);
    mViewPager.setOffscreenPageLimit(3);
}

【问题讨论】:

  • 只需通过适配器中的构造函数发送 id。
  • 好的,我会试试@xAqweRx

标签: java android android-viewpager adapter android-cardview


【解决方案1】:

1) 创建一个 POJO 类(根据您的要求)示例:yourclass

2) 为您的类创建对象并存储在列表中,并将其存储在列表中。 如下。

ArrayList listObject=new ArrayList();

3) mCardAdapter = new CardPagerAdapter(listObject);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-29
    • 2020-02-19
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多