2017-02-04 67 views
0

我有一個方法在適配器內調用addItem()我想從MainAcivity調用它。適配器內的調用方法

public class MessageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> { 

private static final int VIEW_TYPE_FIRST = 0; 
private static final int VIEW_TYPE_SECOND = 1; 

List<Message> mList; 
Context context; 
LayoutInflater inflater; 

public MessageAdapter(Context context, List<Message> mList) { 
    this.context = context; 
    this.mList = mList; 
    this.inflater = LayoutInflater.from(context); 
} 


public void addItem(Message item) { 
    mList.add(mList.size()+1,item); 
    notifyItemInserted(mList.size()+1); 

} 

回答

2
// Adapter initialization 
MessageAdapter adapter = new MessageAdapter(MainActivity.this, list); 
recyclerview.setAdapter(adapter); // setting your adapter 
adapter.addItem(your model); // Call method using an object of adapter; 

注:每個非靜態方法只能通過初始化後,該類的對象訪問。

1

那麼在你Activity,你將有你的適配器對象。
只需調用yourAdapter.addItem(yourMessage);