Issue 1:
I have 2 tabs and I want to hide the AppBar when I scroll on either of them. The idea is to achieve the behavior with the floating option on SliverAppBar, but it doesn't work with the TabBarView. Instead of appearing again as soon as you start scrolling up, it only appears when you get to the top.

Here's the snippet.

Map<String, MaterialColor> pages = {
'blue': Colors.lightBlue,
'green': Colors.lightGreen
};

Widget build(BuildContext context) {
return new DefaultTabController(
length: pages.length,
child: new Scaffold(
body: new NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
SliverAppBar(
title: const Text('Tabs and scrolling'),
floating: true,
expandedHeight: 150.0,
forceElevated: innerBoxIsScrolled,
bottom: new TabBar(
tabs: pages.keys.map(
(String label) => new Tab(text: label),
).toList(),
),
),
];
},

body: new TabBarView(
children: pages.keys.map((String label) {
return new SafeArea(
top: false,
bottom: false,
child: new Builder(
builder: (BuildContext context) {
return new CustomScrollView(
key: new PageStorageKey<String>(label),
slivers: <Widget>[
new SliverPadding(
padding: const EdgeInsets.symmetric(
vertical: 8.0,
horizontal: 16.0,
),
sliver: new SliverFixedExtentList(
itemExtent: 100.0,
delegate: new SliverChildBuilderDelegate(
(BuildContext context, int index) {
return new Padding(
padding: const EdgeInsets.symmetric(
vertical: 8.0,
),
child: Container(
alignment: Alignment.center,
color: pages[label][100 * (index % 9)],
child: new Text('list item $index'),
)
);
},
childCount: 100,
),
),
),
],
);
},
),
);
}).toList(),
),
),
),
);
}

Here is the output of flutter doctor:

Doctor summary (to see all details, run flutter doctor -v):

[✓] Flutter (Channel master, v0.9.6-pre.35, on Linux, locale en_US.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)

[✓] Android Studio (version 3.2)

[✓] Connected device (1 available)

Issue 2:
b/136489010

I want to make a floating app bar that's shared across multiple TabBarViews, so I used a NestedScrollView. I would expect the app bar to appear whenever I scroll up at any point of the page but it does not seem to do so?

main.dart

import 'package:flutter/material.dart';

void main() {

Widget getPage(){
return new ListView.builder(
itemBuilder: ((context, index){
return new ListTile(
title: new Text('Item $index')
);
}),
);
}

runApp(
new MaterialApp(
home: new DefaultTabController(
length: 2,
child: new Scaffold(
body: new NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
new SliverAppBar(
floating: true,
bottom: new TabBar(
tabs: [
new Tab(text: 'tab1'),
new Tab(text: 'tab2'),
],
),
),
];
},
body: new TabBarView(
children: [
getPage(),
getPage(),
],
),
),
),
),
),
);
}

Strangely enough if "snap: true" is set for the SliverAppBar the desired effect is achieved. But I don't want it to snap.

Similar issue here: #11222

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.3.2, on Microsoft Windows [Version 10.0.16299.431], locale en-GB)
[√] Android toolchain - develop for Android devices (Android SDK 26.0.3)
[X] Android Studio (not installed)
[√] VS Code, 64-bit edition (version 1.23.0)
[!] Connected devices
! No devices available
! Doctor found issues in 2 categories.