BottomSheetBehavior 之 java.lang.IllegalArgumentException: The view is not associated with BottomSheetBehavior

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
AndroidRuntime: FATAL EXCEPTION: main
Process: me.chunsheng.uberdriver, PID: 13674
    java.lang.RuntimeException: Unable to start activity ComponentInfo{me.chunsheng.uberdriver/me.chunsheng.uberdriver.MainActivity}: java.lang.IllegalArgumentException: The view is not associated with BottomSheetBehavior
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2503)
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2570)
     at android.app.ActivityThread.access$800(ActivityThread.java:162)
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1446)
     at android.os.Handler.dispatchMessage(Handler.java:102)
     at android.os.Looper.loop(Looper.java:135)
     at android.app.ActivityThread.main(ActivityThread.java:5528)
     at java.lang.reflect.Method.invoke(Native Method)
     at java.lang.reflect.Method.invoke(Method.java:372)
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:952)
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
Caused by: java.lang.IllegalArgumentException: The view is not associated with BottomSheetBehavior
     at android.support.design.widget.BottomSheetBehavior.from(BottomSheetBehavior.java:710)
     at me.chunsheng.uberdriver.MainActivity.onCreate(MainActivity.java:27)
     at android.app.Activity.performCreate(Activity.java:6074)
     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1117)
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2456)
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2570)
     at android.app.ActivityThread.access$800(ActivityThread.java:162)
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1446)
     at android.os.Handler.dispatchMessage(Handler.java:102)
     at android.os.Looper.loop(Looper.java:135)
     at android.app.ActivityThread.main(ActivityThread.java:5528)
     at java.lang.reflect.Method.invoke(Native Method)
     at java.lang.reflect.Method.invoke(Method.java:372)
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:952)
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
09-14 22:52:58.951 13674-13674/me.chunsheng.uberdriver I/Process: Sending signal. PID: 13674 SIG: 9

 

 错误信息如上:view与BottomSheetBehavior不匹配???

 

这是什么鬼呢???

 

由于BottomSheetBehavior填充的view需要为 android.support.design.widget.CoordinatorLayout 的一个子view,这时候,比如view在布局中为一个相对布局,需要这样写:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<RelativeLayout
       android:id="@+id/layout_bottom_sheet"
       android:layout_width="match_parent"
       android:layout_height="250dp"
       android:background="@android:color/white"
       android:elevation="8dp"
       app:behavior_hideable="true"
       app:behavior_peekHeight="90dp"
       app:layout_behavior="android.support.design.widget.BottomSheetBehavior">
 
       <TextView
           android:id="@+id/text_view_sheet_title"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:padding="@dimen/activity_vertical_margin"
           android:text="点击叫车,上滑选车"
           android:textSize="14sp" />
 
   </RelativeLayout>

 注意红色声明,这时候用BottomSheetBehavior填充这个view的时候才是正确的.

posted @   狂奔的小狮子  阅读(2418)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验

点击右上角即可分享
微信分享提示