Я знакомлюсь с дизайном материалов Android и пытаюсь создать простой проект, реализующий сворачивающуюся панель инструментов на основе прокрутки recyclerView. Проект состоит только из одного действия, макет которого содержит recyclerView. Думаю, я сделал все необходимое, чтобы правильно реализовать эту анимацию. Проблема в том, что при прокрутке фон строки состояния (более насыщенный цвет) исчезает, а панель инструментов перекрывает строку состояния, а не скрывается полностью. Я добавлю изображения и код, чтобы дать вам представление. Заранее спасибо, буду признателен за вашу помощь.
Панель инструментов перед свертыванием:
Я знакомлюсь с дизайном материалов Android и пытаюсь создать простой проект, реализующий сворачивающуюся панель инструментов на основе прокрутки recyclerView. Проект состоит только из одного действия, макет которого содержит recyclerView. Думаю, я сделал все необходимое, чтобы правильно реализовать эту анимацию. Проблема в том, что при прокрутке фон строки состояния (более насыщенный цвет) исчезает, а панель инструментов перекрывает строку состояния, а не скрывается полностью. Я добавлю изображения и код, чтобы дать вам представление. Заранее спасибо, буду признателен за вашу помощь. Панель инструментов перед свертыванием:
[img]https://i.sstatic.net/vlOMb.png[/img]
Панель инструментов после свертывания:
[img]https://i.sstatic.net/Ar3qT.png[/img]
Это макет MainActivity. [code]
[/code] Это файл build.gradle, в который я добавил зависимости [code]apply plugin: 'com.android.application'
// Data Arraylist commentsList = new ArrayList(); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null)); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null)); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null)); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null)); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null)); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null)); commentsList.add(new Comentario(1, 1, 1, "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ", null, "Name", "LastName", " ", "Telematics Engineer", null));
// Setting the adapter adapter = new CommentsAdapter(this, commentsList); rvComments.setAdapter(adapter); rvComments.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false));
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); }
@Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; }
@Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId();
//noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; }
return super.onOptionsItemSelected(item); } } [/code] Я скачал из Интернета проект с этим эффектом, и он работает нормально, но я не вижу, что не так с моим.