android - 我可以将单个自定义适配器用于同一项目中的多个活动吗?
问题描述
我正在创建一个食品订购 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;
}
}
解决方案
是的,您可以为图像翻转器和 使用相同的适配器ListView
,但不能RecyclerView
。你可以扩展你的适配器ArrayAdapter
,你很高兴,因为它有getView
方法来填充你的自定义视图,所以ListView
.
虽然RecyclerView
适配器没有这个方法,所以你ListView
只能在你的所有项目中使用。
推荐阅读
- node.js - Windows 上的 npm 脚本中没有替换变量
- javascript - 选择选项中的字母数字文本按复杂字符串的第一部分排序
- node.js - Node.js将目录中的文件名与文本文件中的文件名进行比较
- java - 如何使用元数据提取器从 BMP 图像中提取数据
- react-native - React navigation this.props.navigation undefined
- android - RxJava2 - 使用 PublishSubject 发射项目
- java - 用 Java (JDBC) 编写存储函数
- ruby-on-rails - RoR,嘶嘶声未捕获错误:语法错误,无法识别的表达式:/sv/priser
- python - 总和谷歌地图距离的优化函数
- ruby-on-rails - 如何查询 has_many_and_belongs_to 关联?