Android设计支持库24.2.1使BottomSheet在启动时打开

前端之家收集整理的这篇文章主要介绍了Android设计支持库24.2.1使BottomSheet在启动时打开前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
从版本23.4.0切换到 Android Design Support库的24.2.1版之后,BottomSheetBehavior停止了为我工作. BottomSheet显示为打开,并且在调用setState时不关闭(BottomSheetBehavior.STATE_COLLAPSED).这不会发生在BottomSheetBehav@R_404_437@r按预期为我工作的设计库的23.4.0上.

版本24中是否有任何更改需要使用BottomSheetBehavior?

这是我的布局文件

  1. <?xml version="1.0" encoding="utf-8"?>
  1. <LinearLayout
  2. android:layout_width="wrap_content"
  3. android:layout_height="wrap_content">
  4.  
  5. <Button
  6. android:layout_width="wrap_content"
  7. android:layout_height="wrap_content"
  8. android:id="@+id/button"
  9. android:text="Open Bottom Sheet"
  10. />
  11.  
  12. <Button
  13. android:layout_width="wrap_content"
  14. android:layout_height="wrap_content"
  15. android:id="@+id/close_button"
  16. android:text="Close Bottom Sheet"
  17. />
  18.  
  19. </LinearLayout>
  20. <LinearLayout
  21. android:id="@+id/bottom_sheet"
  22. android:layout_width="match_parent"
  23. android:layout_height="100dp"
  24. android:orientation="horizontal"
  25. android:background="@android:color/holo_green_light"
  26. app:layout_behavior="android.support.design.widget.BottomSheetBehavior"/>

这是我正在使用的活动代码

  1. public class ScrollingActivity extends AppCompatActivity implements View.OnClickListener {
  2.  
  3. private View m_bottomSheet;
  4. private BottomSheetBehavior m_behav@R_404_437@r;
  5.  
  6. @Override
  7. protected void onCreate(Bundle savedInstanceState) {
  8. super.onCreate(savedInstanceState);
  9. setContentView(R.layout.activity_scrolling);
  10.  
  11. m_bottomSheet = findViewById(R.id.bottom_sheet);
  12. m_behav@R_404_437@r = BottomSheetBehavior.from(m_bottomSheet);
  13.  
  14.  
  15. ((Button)findViewById(R.id.button)).setOnClickListener(this);
  16. ((Button)findViewById(R.id.close_button)).setOnClickListener(this);
  17. }
  18. @Override
  19. public void onClick(View v) {
  20. switch(v.getId()){
  21. case R.id.button:
  22. m_behav@R_404_437@r.setState(BottomSheetBehavior.STATE_EXPANDED);
  23. break;
  24. case R.id.close_button:
  25. m_behav@R_404_437@r.setState(BottomSheetBehavior.STATE_COLLAPSED);
  26. break;
  27. }
  28. }

}

任何意见,将不胜感激.

解决方法

  1. m_behav@R_404_437@r.setPeekHeight(0);

它默认为“peek”状态,所以如果你不想要它看,你需要将peek高度设置为0.

猜你在找的Android相关文章