Add clipBehavior to Card+InkWell example (#109872)

* Add clipBehavior to Card+InkWell example

* Add test for example

* Update comment
This commit is contained in:
Bryan Oltman 2022-08-22 11:24:23 -04:00 committed by GitHub
parent e997ab811c
commit 6540ae0be7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 21 additions and 0 deletions

View File

@ -32,6 +32,11 @@ class MyStatelessWidget extends StatelessWidget {
Widget build(BuildContext context) {
return Center(
child: Card(
// clipBehavior is necessary because, without it, the InkWell's animation
// will extend beyond the rounded edges of the [Card] (see https://github.com/flutter/flutter/issues/109776)
// This comes with a small performance cost, and you should not set [clipBehavior]
// unless you need it.
clipBehavior: Clip.hardEdge,
child: InkWell(
splashColor: Colors.blue.withAlpha(30),
onTap: () {

View File

@ -0,0 +1,16 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:flutter/material.dart';
import 'package:flutter_api_samples/material/card/card.1.dart' as example;
import 'package:flutter_test/flutter_test.dart';
void main() {
testWidgets('Card has clip applied', (WidgetTester tester) async {
await tester.pumpWidget(const example.MyApp());
final Card card = tester.firstWidget(find.byType(Card));
expect(card.clipBehavior, Clip.hardEdge);
});
}