一直都想写一个能够转动的Widget,而且能够近似的模拟生活中的惯性跟阻力,由于设计到一些数学公式,做者还去请教了个人高中老师,最后学了点传感器,就直接外加个可选择传感器控制了git
逻辑部分比较复杂,做者写了好几天,最后干脆直接写了一个Dart Packages上传到了Pub,里面有大量的注释,代码还很不简化体谅一下,欢迎体验github
将其添加到包的pubspec.yaml文件中:async
dependencies:
rotated_view: ^1.0.1
复制代码
而后导入包ide
import 'package:rotated_view/rotated_view.dart';
复制代码
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:rotated_view/rotated_view.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
StreamSubscription _subscription;
@override
void initState() {
super.initState();
}
@override
void dispose() {
if (_subscription != null) {
_subscription.cancel();
}
super.dispose();
}
@override
Widget build(BuildContext context) {
return MaterialApp(
color: Colors.black,
home: Scaffold(
body: Center(
child: Column(
children: <Widget>[
Padding(
padding: EdgeInsets.fromLTRB(0, 100, 0, 0),
),
Container(
width: 400,
height: 400,
child: RotatedView(
child: Image.asset("images/launcher_background.png"),
usesensor: false,
issame: false,
haveinertia: true,
),
),
Text(""),
],
)),
),
);
}
}
复制代码
个人FlutterGithubui