Android将值从活动传递到适配器

时间:2016-11-15 11:53:52

标签: android

我想将变量从activity传递给适配器。

我的适配器看起来像这样

  public SampleAdapter(Activity context, ArrayList<SampleBeans> data){
  this.context = context;
  this.data = data;
  }

我的活动看起来像这样

  newadapter = new SampleAdapter(this);
  newadapter.setId(Login_uuid_value);

给我错误SampleAdapter无法应用于活动。

2 个答案:

答案 0 :(得分:6)

只需将值添加到构造函数中。

public SimpleAdapter(Activity context, ArrayList<SimpleBeans> data, String mystring, int myInt){
  //use datas here
}

并像

一样使用它
myAdapter = new SimpleAdapter(this, data, myString, myInt);

您可以设置所需的所有数据,我的一些例子。

在您的情况下,您只需要将arrayList添加到构造函数中。

myAdapter = new SimpleAdapter(this, myArrayList);

答案 1 :(得分:1)

在活动中声明适配器

private ChatsAdapter chatsAdapter;

在Activity中的OnCreate中初始化您的适配器(sendingEntity将是您要传递的字符串)

chatsAdapter = new ChatsAdapter(lIndividualChats, sendingEntity);

在适配器中声明变量

private String entity;

在适配器构造器中将其捕获

public ChatsAdapter(List<ChatModel> individualChats, String sendingEntity) {

    this.individualChats = individualChats;
    entity = sendingEntity;

}

在适配器的任何位置使用它

Log.d(TAG, "entity: " +entity);