Странное поведение при сворачивании панели инструментов AndroidAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Странное поведение при сворачивании панели инструментов Android

Сообщение Anonymous »

Я знакомлюсь с дизайном материалов Android и пытаюсь создать простой проект, реализующий сворачивающуюся панель инструментов на основе прокрутки recyclerView. Проект состоит только из одного действия, макет которого содержит recyclerView. Думаю, я сделал все необходимое, чтобы правильно реализовать эту анимацию. Проблема в том, что при прокрутке фон строки состояния (более насыщенный цвет) исчезает, а панель инструментов перекрывает строку состояния, а не скрывается полностью. Я добавлю изображения и код, чтобы дать вам представление. Заранее спасибо, буду признателен за вашу помощь.
Панель инструментов перед свертыванием:

Изображение

Панель инструментов после свертывания:

Изображение

Это макет MainActivity. Это файл build.gradle, в который я добавил зависимости

Код: Выделить всё

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.2"

defaultConfig {
applicationId "com.example.francisco.recycler"
minSdkVersion 19
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'),           'proguard-rules.pro'
}
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:recyclerview-v7:23.1.0'
}
И, наконец, если это необходимо, MainActivity.java

Код: Выделить всё

public class MainActivity extends AppCompatActivity {

private RecyclerView  rvComments;
private List commentsList;
private CommentsAdapter adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
rvComments = (RecyclerView) findViewById(R.id.rvComments);
setSupportActionBar(toolbar);

// 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);
}
}
Я скачал из Интернета проект с этим эффектом, и он работает нормально, но я не вижу, что не так с моим.

Подробнее здесь: https://stackoverflow.com/questions/336 ... ar-android
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»