전체 글
-
Flutter exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 에러DEV/flutter (dart) 2023. 2. 6. 14:33
Flutter로 가상 안드로이드를 띄우고 실행을 눌렀을 때, 다음과 같은 에러가 발생하였다. Build file 'C:\Users\Seokbong\Desktop\workspace\flutter\contact\android\app\build.gradle' exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version ... 정확한 이유는 모르겠으나 JDK 버전이 18 이상에서는 안된다는 것 같더라. 1. 11버전이 안정적으로 실행이 된다는 글을 보았고 JDK 11버전을 받고 환경변수를 수정해주었다. https://seokbong.tistory.com/137 Java 환경변수 설정..
-
Flutter 자식 위젯에서 부모 위젯 함수에 매개변수 전달하기DEV/flutter (dart) 2023. 2. 6. 11:52
1. 부모 위젯에서 함수 선언시 매개변수 만들어두기 2. 자식 위젯에 부모 위젯 함수 등록해주기 3. 자식 위젯에서 부모 위젯의 함수를 사용하고 싶을 때, 선언한 함수 호출하면서 매개변수 넣어주기 4. 부모 위젯에서 등록한 매개변수가 로직에 따라 처리. // 부모 위젯(ParentWidget) ...(대충 위젯 구성) var accounts = []; // 받을 매개변수(dataObj) addAccount(dataObj) { setState(() { accounts.add(dataObj); }); } return ChildWidget(notifyParent: addAccount); // 변수를 parameter로 넘겨주기 // 자식 위젯(ChildWidget) class ChildWidget extend..
-
Fluuter Column 높이 (in AlertDialog)DEV/flutter (dart) 2023. 2. 2. 17:58
AlertDialog 안에서 content를 Column으로 구성하여 Alert을 구성하려고 했더니 엄청 길게 나오더라. 그래서 height 값을 고정으로 넣으려고 했는데 안되서 검색하였고 최소값을 가지게 만들 수 있더라... Column 안에 mainAxisSize(메인축 사이즈) 값을 min으로 해주자 (values도 있음!) return AlertDialog( title: Text('없겠지만 있는 친구를 추가'), content: Column( mainAxisSize: MainAxisSize.min, children: [ TextField( decoration: InputDecoration(hintText: '이름'), onChanged: (text){ name = text; }, ), TextFi..
-
Flutter 자식 위젯에서 부모 위젯 변수 접근(수정)하기 (함수사용)DEV/flutter (dart) 2023. 2. 2. 12:33
자식 위젯에서 부모 위젯의 변수를 접근 및 수정하려고 한다. 여러 방법이 있는데 여기서는 함수를 사용하여 변수를 수정하고자 한다. 결과적으로 방법은 다음과 같다. 1. 부모 위젯(ParentWidget)에서 State 처리 함수를 생성(Re-Rendering이 필요한 경우), setState() 함수를 통하여 값을 변경해 줄 것. 2. 부모 위젯에서 생성한 함수를 자식 위젯(ChildWidget)에 function parameter로 전달. 3. 자식 위젯에서 전달받은 function parameter를 등록함. 4. 자식 위젯에서 등록한 function을 상황에 맞게 실행. (함수에 매개변수 추가 가능) // 부모 위젯(ParentWidget) ...(대충 위젯 구성) var num = 0; // 변경..
-
Flutter 부모 위젯에서 자식 위젯에게 변수 보내기DEV/flutter (dart) 2023. 2. 2. 12:18
// 부모 위젯(ParentWidget) ...(대충 위젯 구성) const name = '석봉'; return ChildWidget(name: name); // 변수를 parameter로 넘겨주기 (사용할 이름: 변수) // 자식 위젯(ChildWidget) class ChildWidget extends ...Widget { // 부모에서 던진 parameter 등록 (this.name, var name) ChildWidget({Key? key, this.name}) : super(key: key); var name; // name 사용가능! ... }