Ich versuchte die neue BottomSheet
in Android-Unterstützung. Innerhalb der BottomSheet
habe ich eine TextView
und eine ScrollView
gesetzt. Die BottomSheet
zeigt nur gut, das einzige Problem, das ich fand, ist, dass die ScrollView
in der BottomSheet
nicht scrollt. Jedes Mal, wenn ich versuche zu scrollen, entweder das Layout in der Haupttätigkeit, die Scroll oder die BottomSheet
Zustand von Collapse ändern, um zu erweitern.Scrollview scrollt nicht in Android Unterseite
das ist Snippet meiner Aktivität Class Code:
private BottomSheetBehavior behavior;
View bottomSheet;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setTextViewOnClickListener(this, findViewById(R.id.parentLayout));
CoordinatorLayout coordinatorLayout = (CoordinatorLayout) findViewById(R.id.main_content);
// The View with the BottomSheetBehavior
bottomSheet = coordinatorLayout.findViewById(R.id.bottom_sheet);
behavior = BottomSheetBehavior.from(bottomSheet);
behavior.setBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() {
@Override
public void onStateChanged(@NonNull View bottomSheet, int newState) {
// React to state change
}
@Override
public void onSlide(@NonNull View bottomSheet, float slideOffset) {
// React to dragging events
}
});
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tv1:
setTextViewHeader("Header1");
setTextViewContent("Long_Text_1");
break;
case R.id.tv2:
setTextViewHeader("Header2");
setTextViewContent("Long_Text_2");
break;
case R.id.tv3:
setTextViewHeader("Header3");
setTextViewContent("Long_Text_3");
break;
default:
break;
}
behavior.setPeekHeight(100);
behavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
behavior.setHideable(true);
bottomSheet.requestLayout();
}
Das ist mein Plan xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/tv1"
style="@style/LightRow"
android:text="some_long_text_here" />
<TextView
android:id="@+id/tv2"
style="@style/DarkRow"
android:text="another_long_text_here" />
<TextView
android:id="@+id/tv3"
style="@style/LightRow"
android:text="another_long_text_here" />
</LinearLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/bottom_sheet"
android:layout_width="match_parent"
android:layout_height="250dp"
app:behavior_hideable="true"
android:fillViewport="true"
app:layout_behavior="android.support.design.widget.BottomSheetBehavior">
<android.support.v7.widget.LinearLayoutCompat
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FF7733"
android:orientation="vertical">
<TextView
android:id="@+id/tvID1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="HEADER"
android:textAppearance="?android:attr/textAppearanceMedium" />
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="9"
android:background="#ffb773"
android:fillViewport="true">
<TextView
android:id="@+id/tvID2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#3377ff"
android:textAppearance="?android:attr/textAppearanceSmall" />
</ScrollView>
</android.support.v7.widget.LinearLayoutCompat>
</android.support.v4.widget.NestedScrollView>
Bitte helfen.
Dank
Bitte schreiben Sie den Code für das Layout , damit wir es überprüfen können. Damit 'ScrollView' funktioniert, sollte es nur ein Kind enthalten. –
zeigen, was Sie versucht haben – Pooya
Ich habe einige Code in meiner Frage, können Sie bitte einen Blick und geben Lösungen – asiansaga