목록전체 글 (172)
일모도원(日暮途遠) 개발자
플로팅 버튼을 만들었는데, 오른쪽 화살표 버튼은 우측 화면처럼 배경은 제거하고 화살표만 표시 하고 싶었다. 간단하게 생각하고 배경색을 투명(透明, transparent)으로 줬는데 배경이 뿌옇게 나온다. FloatingActionButton( onPressed: () { }, backgroundColor: Colors.transparent, child: const Icon(Icons.arrow_forward_ios), ), 이건 elevation이 남아 있어서 그렇다.(Defaults to 6 이라고 한다) 아래처럼 elevation: 0.0,을 주면 해결 된다. FloatingActionButton( onPressed: () { }, elevation: 0.0, backgroundColor: Color..
class MyAppBar extends StatelessWidget implements PreferredSizeWidget { const MyAppBar({super.key}); @override Size get preferredSize => const Size.fromHeight(100); @override Widget build(BuildContext context) { return AppBar( title: const Text('Flutter 앱'), ); } } preferredSize값을 조절해주면 저 빈공간이 사라진다. (값을 하드코딩안하고 싶은데, 잘 모르겠다.) Size get preferredSize => const Size.fromHeight(50);
StatefulWidget내에서가 아니라 다른 Dart파일의 일반 함수안에서 showModalBottomSheet를 실행시키는데, 스위치를 변경할 일이 있어서 setState를 쓰니까, setState가 없다고 나온다. //A.dart파일의 Widget build(BuildContext context) 안에서 아래처럼 호출 showMyBottomSheet(context: context); // B.dart파일 void showMyBottomSheet({required BuildContext context}) { var isOption = true; showModalBottomSheet( context: context, builder: (BuildContext context) { return SizedBo..
안드로이드에서는 잘되는 기능이 아이폰에서만 아래와 같은 에러를 내고 앱이 멈춰버린다. -[NSError init] called; this results in an invalid NSError instance. It will raise an exception in a future release. Please call errorWithDomain:code:userInfo: or initWithDomain:code:userInfo:. This message shown only once. Firebase쪽하고 연관있는 기능을 할때마다 멈추어서 구글링을 해보니 cloud_firestore쪽에 이슈가 있나 보다. cloud_firestore: 4.11.0 => NG, No response. cloud_firesto..
../../../../../.pub-cache/hosted/pub.dev/google_fonts-3.0.1/lib/src/google_fonts_base.dart:14:1: Error: 'AssetManifest' is imported from both 'package:flutter/src/services/asset_manifest.dart' and 'package:google_fonts/src/asset_manifest.dart'. import 'asset_manifest.dart'; ^^^^^^^^^^^^^ 위와 같은 에러가 나오면... google_fonts를 최신껄로 업데이트 해보자. google_fonts: ^4.0.4
backgroundImage에서 동기함수(同期函數, Synchronous function)는 그냥 아래처럼 사용하면 된다. child: CircleAvatar( backgroundImage: AvatarImageUtil.getAvatarImage(imageName: 'a.png'), radius: 20, // Adjust the radius as needed ), static AssetImage getAvatarImage({String? imageName = ""}) { } 근데 아래처럼 비동기 함수를 부를려고 했는데, 그냥은 안된다. await를 붙이면 될줄 알았는데... 위젯에 좀 복잡해서(FutureBuilder를 위에서 이미 사용중) 에러가 난다. static Future loadMyAvatarI..
다른곳에서는 잘 불리던 위젯이 Drawer에서는 No Material widget found.라는 에러를 내면서 안불린다. return ListView( children: [ UserAccountsDrawerHeader( currentAccountPicture: GestureDetector( onTap: () { Get.to(() => const ProfilePage()); }, 이럴때는 아래처럼 Material로 감싸주자. Get.to(() => const Material( child: ProfilePage(), )); Navigator.push( context, MaterialPageRoute( builder: (context) => const Material( child: ProfilePage(),..
Local Push를 띄운 상태에서 클릭하면 다른 뷰를 열려고 하는데, 기존에 쓰던 Navigator.push는 context가 필요하여 쓸수가 없다. 실제로 에러나는 부분은 빨간색 context이다. (context)는 에러나는 부분이 아니다. Navigator.push( context, MaterialPageRoute( builder: (context) => NewPage(), ), ); 이럴때는 GlobalKey를 써보자. GlobalKey : A key that is unique across the entire app. 아래처럼 navigatorKey라는 변수를 GlobalKey로 선언하고, main함수에서 navigatorKey에 할당해주자. final GlobalKey navigatorKey ..