Dans mon activité, j'utilise une barre d'outils qui s'effondre et qui fonctionne correctement. Il y a une icône dans le menu qui, lorsqu'elle est cliquée, déclenche l'affichage de la feuille du bas et la feuille du bas apparaît. Et lorsque vous cliquez à nouveau, la feuille inférieure s'effondre à nouveau.Comment utiliser la barre d'outils d'effondrement et la vue de la feuille du bas dans la même activité?
voici le XML pour cela.
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.example.aadesh.khabriuncle.ArticleScreenActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/appBar"
android:layout_width="match_parent"
android:layout_height="300dp"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsingToolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="#7fff"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:title="">
<FrameLayout
android:id="@+id/tags_article"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:background="#7000"
android:visibility="visible">
<ImageView
android:id="@+id/toolbarImage"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax" />
<LinearLayout
android:id="@+id/tags"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="@drawable/shape_chips"
android:orientation="horizontal"
android:visibility="gone" />
</FrameLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarArticleScreen"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:navigationIcon="@drawable/ic_chevron_left_black_24dp"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
</android.support.v7.widget.Toolbar>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/titletext"
style="@style/Article.title"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/author"
style="@style/Article.date"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentLeft="true" />
<TextView
android:id="@+id/datetext"
style="@style/Article.date"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentRight="true" />
</RelativeLayout>
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
<android.support.v4.widget.NestedScrollView
android:id="@+id/comments_bottomSheet"
android:layout_width="match_parent"
android:layout_height="250dp"
android:background="@color/colorAccent"
android:clipToPadding="true"
app:layout_behavior="android.support.design.widget.BottomSheetBehavior">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/titlebottom"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"
android:textAllCaps="true"
android:textSize="16sp" />
<TextView
android:id="@+id/textbottom"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"
android:textAllCaps="true"
android:textSize="12sp" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
Voici comment je l'ai mis en java
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.comments) {
Log.i(TAG, "selected item is " + item);
if (bottomSheetBehavior.getState() != BottomSheetBehavior.STATE_EXPANDED) {
Log.i(TAG, "the state is " + bottomSheetBehavior.getState());
bottomSheetBehavior.setState(BottomSheetBehavior.STATE_EXPANDED);
} else {
Log.i(TAG, "the state is " + bottomSheetBehavior.getState());
bottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
}
}
return super.onOptionsItemSelected(item);
}
Le problème est que la vue de la feuille de fond apparaît chaque fois que l'activité commence. Et quand je clique sur l'icône du menu rien ne se passe. Même si les journaux que j'ai imprimés s'affichent.
Quelle pourrait être la raison?