본문 바로가기

분류 전체보기82

3주차(3)- My memo(memo_service.dart)by Provide // Memo 데이터의 형식을 정해줍니다. 추후 isPinned, updatedAt 등의 정보도 저장할 수 있습니다. class Memos { //햇갈리니까 Memos로 클래스명 생성 Memos({ required this.content, this.isPinned = false, //b2. 맨처음 isPinned값은 false로 지정하고 클릭여부에따라 true,false변경가능 this.updatedAt, //D2 생성자 추가 }); String content; bool isPinned; //b1. isPinned 변수 선언 DateTime? updatedAt; //D1 널값이어도 상관없다. Map toJson() { return { 'content': content, 'isPinned': isPinne.. 2023. 7. 8.
3주차(2)- My memo(main.dart/DetailPage)by Provide class DetailPage extends StatelessWidget { DetailPage({ super.key, this.i, this.memoList, }); final i; final memoList; TextEditingController contentController = TextEditingController(); // TextEditingController()를 담은 변수 contentController를 아래에서 .text를 이용해 사용하면 유저가 쓴 내용 출력 @override Widget build(BuildContext context) { MemoService memoServicem = context.read(); //context.read일회성 불러오기가능 Memos memo .. 2023. 7. 8.
3주차(1)- My memo(main.dart/HomePage)by Provide late SharedPreferences prefs; void main() async { WidgetsFlutterBinding.ensureInitialized(); prefs = await SharedPreferences.getInstance(); runApp( //9~13줄 : prefs라는 변수를 선언해 어디서든 sharedpreferences 객체를 사용할 수 있도록 한다. MultiProvider( providers: [ ChangeNotifierProvider( create: (context) => MemoService()), //ChangeNotifierProvider로 MyApp을 감싼다. ], //그러면 MyApp하위 위젯들은 모두 memo_Service.dart을 사용할 수 있다. ch.. 2023. 7. 8.
2주차 과제 완성본(shazam) import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); //생성자 선언. : '이 클래스를 이렇게 생성하겠다' 라고 지정 //이 생성자에서는 key값을 파라미터로 받아 //MyApp 클래스가 상속받는 StatlessWidget 클래스에 key를 전달해줄 수 있다 //선언하지 않으면 기본 생성자만 쓰입니다. MyApp()으로 선언해서 객체를 생성할 수 있다. //대신 key와 같은 인자를 선언하지 않았기 때문에 super 생성자에 인자를 넘겨줄 수 없다. @override Widget bu.. 2023. 7. 1.