我可以在同一个项目中为一个多个活动使用一个自定义适配器吗?

时间:2018-05-06 06:37:21

标签: android listview custom-adapter

我正在创建一个食品订购Android应用程序。在这个应用程序中,我已经使用自定义适配器用于图像翻转器(图像幻灯片),现在我想将它用于自定义Listview。 所以,任何人都可以指导我如何做到这一点

这是自定义适配器的代码

package com.example.zaheerulislam.thedelicioso;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class CustomAdapter extends BaseAdapter {
    Context context;
    int[] SliderImages;
    String[] SliderNames;
    LayoutInflater inflter;

public CustomAdapter(Context applicationContext, String[] SliderNames, int[] SliderImages) {
    this.context = applicationContext;
    this.SliderImages = SliderImages;
    this.SliderNames = SliderNames;
    inflter = (LayoutInflater.from(applicationContext));

}

@Override
public int getCount() {
    return SliderNames.length;
}

@Override
public Object getItem(int position) {
    return null;
}

@Override
public long getItemId(int position) {
    return 0;
}

@Override
public View getView(int position, View view, ViewGroup parent) {
    view = inflter.inflate(R.layout.activity_flipper_items, null);
    TextView fruitName = (TextView) view.findViewById(R.id.fruitName);
    ImageView fruitImage = (ImageView) view.findViewById(R.id.fruitImage);
    fruitName.setText(SliderNames[position]);
    fruitImage.setImageResource(SliderImages[position]);
    return view;
}
}

2 个答案:

答案 0 :(得分:0)

是的,您可以将相同的适配器用于图像翻转器和ListView,但不能使用RecyclerView。您可以按ArrayAdapter扩展您的适配器,并且您可以使用getView方法来填充自定义视图,因此ListView需要这样做。

虽然RecyclerView适配器没有此方法,但您只需在所有项目中使用ListView

答案 1 :(得分:0)

是的,您可以为多个活动使用相同的适配器。如果单个项目的视图没有太大差异,那么您可以使用ViewType轻松管理。 如果项目视图更加不同或复杂,那么根据android standers必须使用不同的适配器。