2017-02-04 6 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)を呼び出すだけです。

関連する問題