listView에서 RecyclerView로 채팅 레이아웃을 변환했습니다.메신저 애플리케이션 용 RecyclerView
이제 어떤 문제에 직면했습니다. 새 메시지가 도착하면 자동으로 표시되지 않으므로 수동으로 해당 메시지로 스크롤해야합니다.
ListView에서 일찍 작동합니다.
recylerView에 setStackFormEnd를 사용했습니다.
나는 WhatsApp에 같은 기능은 새로운 메시지가 도착하고 다음 마지막 메시지를 볼 수있는 경우
처럼 당신이 메시지를 스크롤하면 메시지 만
는 다음이 변경되지 않음을 보여줍니다이 원하는 위치. 마지막 위치 messages
메시지의 목록입니다
messagesView.scrollToPosition(messages.size()-1);
에 코드 코드
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerview);
final Button addButton = (Button) findViewById(R.id.button_is_reverse);
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
layoutManager.setStackFromEnd(true);
layoutManager.setReverseLayout(true);
recyclerView.setLayoutManager(layoutManager);
recyclerView.addItemDecoration(new DividerDecoration(this));
adapter = new SampleAdapter(items);
recyclerView.setAdapter(adapter);
addButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
items.add("Items" +items.size());
adapter.notifyItemInserted(items.size());
}
});
수동으로 위치를 스크롤하고 싶지 않습니다. 사실 몇 가지 조항 setReverseLayout하지만 그게 나를 위해 작동하지 않습니다. – Jarvis
'layoutManager.setReverseLayout (true);'? 이것도 작동하지 않습니까? – jitinsharma