如何使用接口将数据传回适配器

我在提问之前尝试过查看类似的帖子,但我不太明白。


我已经实现了如下所示的自定义界面:


public interface OnChangeColor {

  void onColorChanged();

}

尝试从活动中设置颜色,以便回收器视图项目之一更改颜色:


class A extends AppCompatActivity {


 void passData(){

   OnChangeColor onChangeColor = this;

   onChangeColor.onColorChanged();

 }

以及适配器内部的实现,它不会被调用:


class MyAdapter … implements OnColorChanged{

   onColorChanged(){

      //Do something  

   }

如何使用接口将数据传回适配器?


Qyouu
浏览 57回答 2
2回答

慕无忌1623718

接口是任何实现该接口的类都必须遵守的契约。以及如何访问某个类的功能?只需掌握其instance. 你MainActivity没有实现OnChangeColor Interface,所以你不能使用this。你adapter正在实现,interface所以你需要使用   OnChangeColor onChangeColor = adapter;  // your adapter instance

Cats萌萌

您需要在活动 A 中设置接口的实现。class A extends AppCompatActivity {private MyAdapter adapter = MyAdapter() ....void passData(){   OnChangeColor onChangeColor = adapter;   onChangeColor.onColorChanged(); }}在这种情况下,您将在 MyAdapter 中的接口实例上调用 onColorChanged()但是,是的...为什么不在适配器类中创建方法并从活动中调用它。您不需要为此提供接口。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java