当前位置: 首页 > 知识库问答 >
问题:

参数。getBehavior()返回空值

上官扬
2023-03-14

我正在玩新的Android设计库。折叠工具栏布局完美运行。但是,我无法将工具栏的默认状态设置为折叠。

我正在尝试实现这里和这里显示的解决方案

我在我的活动摘要中调用以下代码:

   CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) appBarLayout.getLayoutParams();
    AppBarLayout.Behavior behavior = (AppBarLayout.Behavior) params.getBehavior();
    if(behavior!=null)
    {
        Log.d("DEBUG", "Behaviour is Not Null ");
        int[] consumed = new int[2];
        behavior.onNestedPreScroll(coordinator, appBarLayout, null, 0, 1000,consumed);
//      behavior.onNestedFling(coordinator, appBarLayout, null, 0, 10000, true);
     }
     else
          Log.d("DEBUG", "Behaviour is Null " );

但是,params返回的行为为null。我的xml代码和这里一样,除了我没有使用drawer和CordinatorLayout是我的根布局。

编辑:我之前尝试过切换AppBarLayout。AppBarLayout的行为。ScrollingViewBehavior并将AppBarLayout的layout_behavior设置为@ string/app bar _ scrolling _ view _ behavior,但这导致了怪异的布局。

罗宾的回答很好。为了补充这一点,还可以使用AppBarLayout中的以下标记在xml中设置行为:

app:layout_behavior="android.support.design.widget.AppBarLayout$Behavior"

共有1个答案

汪茂
2023-03-14

您必须先设置布局行为。

只需在您的on创建方法中使用以下代码:

((CoordinatorLayout.LayoutParams) YOUR_LAYOUT.getLayoutParams()).setBehavior(new AppBarLayout.Behavior() {});

 类似资料:
  • 我有一个PySpark Dataframe,它有两列(,,其类型为),其值为或。我正在尝试添加一个新列,这是这两个列的总和。我遵循Pyspark中的示例:在UDF中传递多列 这显示了一系列的< code>NULL,而不是我期望的结果。 我尝试了以下任何一种方法,以查看数据类型是否存在问题 仍然得到空值。 我试着移除阵列: 这可以正常工作并显示 我试着移除UDF,但是离开了阵列: 这可以正常工作并显

  • 函数能够接收参数供自己使用,也可以返回零个或多个值(我们通常把返回多个值称为返回一组值)。相比与 C、C++、Java 和 C#,多值返回是 Go 的一大特性,为我们判断一个函数是否正常执行(参考 第 5.2 节)提供了方便。 我们通过 return 关键字返回一组值。事实上,任何一个有返回值(单个或多个)的函数都必须以 return 或 panic(参考 第 13 章)结尾。 在函数块里面,re

  • 问题内容: 我有两个模型,用户模型和时间表,我想用$ lookup 和猫鼬把这两个模型结合起来。 用户(型号) 时间表(型号) 现在我的查询使用猫鼬: 用户汇总 我的查询结果是一个空的array(),如下所示: 查询结果: 我不知道为什么,但是查询结果是一个 空数组 ,我试图使用$ unwind和$ match,但也无法正常工作。 编辑: 用户集合 时间表的收集 问题答案: 猫鼬在创建时将集合名称

  • 问题内容: 我想了解为什么下面的代码片段无法编译。将函数接受为可能具有任何返回类型的函数参数的Go方法是什么? 播放:https://play.golang.org/p/CqbuEZGy12 我的解决方案基于Volker的答案: 播放:https://play.golang.org/p/waOGBZZwN7 问题答案: 你绊倒了围棋新人一个非常普遍的误解:空接口并 不能 意味着“任何类型”。确实不

  • 我的预览在方法中调用时返回null。测试类确实扩展了,因为它被保存在

  • 我无法理解为什么findFragmentByTag()在我的代码中返回null。我已经在片段onCreate()上设置了RetainInstance(true),并且正在使用getSupportFragmentManager()。findFragmentByTag(),因为它是SherlockFragmentActivity。 这是我的活动代码: } 这是我的片段代码: