아...환경설정 에러해결에 3시간 걸림...ㅎ버전 맞추고, 시시콜콜한 에러가 다 처음이라...ㅎㅎㅎ 그래도 결국 작동됨에 감사를... 현타오지만 담부터 똑같은 바보짓하지않으면돼~~~ 🥲 gradle.properties에 아래 추가 org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true org.gradle.jvmargs=--add-opens java.base/java.io=ALL-UNNAMED build.gradle 버전 변경 buildscript { ext.kotlin_version = '1.6.10' repositories { google() mavenCentral() } dependencies { classpa..
Flutter

📄 Main.dart import 'package:flutter/material.dart'; import 'package:u_and_i/screen/home_screen.dart'; void main() { runApp( MaterialApp( theme: ThemeData( fontFamily: 'sunflower', textTheme: const TextTheme( headlineLarge: TextStyle( color: Colors.white, fontFamily: 'parisienne', fontSize: 80.0, ), headlineMedium: TextStyle( color: Colors.white, fontSize: 50.0, fontWeight: FontWeight.w700, ), bo..

\android\build.gradle 아래 코드에서 버전을 맞게 수정하였다. (+코틀린 버전도 알맞게 수정) buildscript { ext.kotlin_version = '1.6.10' //1.3.50 repositories { google() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:7.0.0' //4.1.0 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } 아래 답변을 참고하여 해결되었다. You must be using a JDK version that is not supported by the Gradle Version. ..
실습 CODE void main() { // 날짜 DateTime now = DateTime.now(); print(now); print(now.year); print(now.month); print(now.day); print(now.second); print(now.millisecond); // 기간 Duration duration = Duration(seconds: 60); print(duration); print(duration.inDays); print(duration.inHours); print(duration.inMinutes); print(duration.inMilliseconds); DateTime specificDay = DateTime( 2017, 11, 23, ); print(spe..

PageView (터치로 좌, 우 스크롤 가능하도 록) Timer (특정 기간마다 지정 함수 실행) StatefulWidget Life Cycle main.dart import 'package:flutter/material.dart'; import 'package:splash_screen/screen/home_screen.dart'; void main() { // Flutter프레임워크가 앱을 실행할 준비가 될때까지 기다린다. 웹뷰최신플러그인 쓸때필요 WidgetsFlutterBinding.ensureInitialized(); runApp( const MaterialApp( debugShowCheckedModeBanner: false, home: HomeScreen(), ), ); ..

Widget 이론 Widget은 모두 "불변"의 법칙을 갖고있다. 하지만 위젯의 값을 변경해야할때가 있다. (색 변경 등) 변경이 필요하면 기존 위젯을 삭제해버리고 완전 새로운 위젯으로 대체한다. StatelessWidget 라이프 사이클 (Life Cycle) Constructor로 생성이되고 생성이 되자마자 build 함수가 실행된다. 이전 Container 예제와 마찬가지로 변경이 필요하면 새로운 위젯을 만들어버린다. 하나의 StatelessWidget은 라이프 사이클동안 단 한번만 build 함수를 실행한다. StatefulWidget 라이프 사이클 (Life Cycle) Constructor가 불린후 createState가 실행된다. 우선 클래스의 생성자가 실행된다. 그 후 createState..
IOS HTTP 프로토콜 사용 \ios\Runner\Info.plist 끝부분 앞에 다음을 추가 NSAppTransportSecurity NSAllowsLocalNetworking NSAllowsArbitraryLoadsInWebContent Android HTTP 프로토콜 사용 \android\app\src\main\AndroidManifest.xml에 추가 (추가된부분 참고) //인터넷허용. 추가된부분 WebView 사용법 (4.X 기준) https://pub.dev/packages/webview_flutter webview_flutter | Flutter Package A Flutter plugin that provides a WebView widget on Android and iOS. pub.d..

실습 CODE import 'package:flutter/material.dart'; class HomeScreen extends StatelessWidget { const HomeScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Scaffold( body: SafeArea( bottom: false, child: Container( color: Colors.black, child: Column( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Row( mainAxisAlignment: MainAxisAlignment.spaceA..

MainAxisAlignment. end - 끝 center - 가운데 spaceBetween - 위젯과 위젯의 사이가 동일하게 배치된다. spaceEvenly - 위젯을 같은 간격으로 배치하지만 끝과 끝에도 위젯이 아닌 빈 간격으로 시작한다. spaceAround - spaceEvenly + 끝과 끝의 간격은 1/2 실습 CODE - MainAxisAlignment. import 'package:flutter/material.dart'; class HomeScreen extends StatelessWidget { const HomeScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Scaff..

CODE import 'package:flutter/material.dart'; void main() { runApp( const MaterialApp( debugShowCheckedModeBanner: false, home: HomeScreen(), ), ); } // 단축키 stless class HomeScreen extends StatelessWidget { const HomeScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Scaffold( backgroundColor: const Color(0xFFF99231), body: Column( mainAxisAlignment: MainA..