首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在ArrayAdapter中传递任何类名

在ArrayAdapter中传递任何类名,可以通过以下步骤完成:

  1. 创建一个自定义的类,用于表示传递的任何类名。这个类可以包含一个变量,用于存储类名。
  2. 创建一个继承自ArrayAdapter的自定义适配器类,并将泛型指定为前面创建的自定义类。
代码语言:txt
复制
public class ClassNameAdapter extends ArrayAdapter<CustomClass> {
    private Context mContext;
    private List<CustomClass> mClassList;

    public ClassNameAdapter(Context context, int resource, List<CustomClass> classList) {
        super(context, resource, classList);
        mContext = context;
        mClassList = classList;
    }

    @NonNull
    @Override
    public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
        if (convertView == null) {
            convertView = LayoutInflater.from(mContext).inflate(android.R.layout.simple_list_item_1, parent, false);
        }

        CustomClass customClass = mClassList.get(position);

        TextView textView = convertView.findViewById(android.R.id.text1);
        textView.setText(customClass.getClassName());

        return convertView;
    }
}
  1. 在使用该适配器的地方,创建一个List并添加自定义类的对象。然后将该List传递给适配器。
代码语言:txt
复制
List<CustomClass> classList = new ArrayList<>();
classList.add(new CustomClass("ClassName1"));
classList.add(new CustomClass("ClassName2"));
classList.add(new CustomClass("ClassName3"));

ClassNameAdapter adapter = new ClassNameAdapter(context, android.R.layout.simple_list_item_1, classList);

在上述代码中,CustomClass是前面自定义的类,其中包含一个用于存储类名的变量。ClassNameAdapter是继承自ArrayAdapter的自定义适配器类,负责将类名显示在ListView或Spinner中的列表项上。

这种方式可以适用于传递任何类名,你只需在自定义的类中增加对应的变量和方法即可。在实际应用中,可以根据需求对适配器进行进一步定制,例如自定义列表项布局和点击事件等。

腾讯云相关产品和产品介绍链接地址请参考腾讯云官方文档:https://cloud.tencent.com/document/product/302/5819

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券