点击标题列表滚到起始位置

在一些交互体验上做的比较的app上都有这么一个小功能,就是当你手指点击到标题栏的时候,会把你当前浏览的位置自动的滚动到该页面的起始的位置。

大概就是下面这个样子:

额……这里当然不是来讲用户体验的…哈哈,能分清那个是真正的知乎日报嘛?

点击标题列表滚到起始位置_第1张图片

上面是这个页面的布局,最外层是Activity,里面的内容部分使用Fragment做展示。

下面要讲的是如何在Fragment中调用Activity里的控件,这里我们需要完成的业务就是点击Activity中的ToolBar,然后将ListView滚动到起始位置,简单吧?下面直接上代码:

     //在Fragment中使用Activity中控件的方式
        AppCompatActivity activity = (AppCompatActivity) getActivity();
        Toolbar mToolBar = (Toolbar) activity.findViewById(R.id.toolbar);

        mToolBar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

               mHeaderListView.smoothScrollToPosition(0);

            }
        });
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

步骤就是,在当前的Fragment中调用getActivity方法获取依附着的那个Activity,然后再用获取到的Activity去findViewById拿到你需要的控件对其操作就行了。

你可能感兴趣的:(Android杂谈)