Flutter 새로 알게 된 사실

줍줍·2023년 9월 4일
0

Flutter

목록 보기
10/11
post-thumbnail

1. addName 함수 변경

원래 코드

var newPerson = Contact();
newPerson.givenName = input1;
newPerson.phones = input2 as List<Item>?;
ContactsService.addContact(newPerson);

수정된 코드

var newPerson = Contact(
  givenName: input1,
  phones: [Item(label: "mobile", value: input2)],
);
ContactsService.addContact(newPerson);

원래 코드에서는 먼저 Contact 객체를 생성하고, 이후에 givenName 및 phones를 따로 할당했습니다.
수정된 코드에서는 Contact 객체를 생성할 때 바로 값을 할당하는 방식으로 변경되었습니다.
또한, 전화 번호는 List<Item> 형태여야 하는데, 이를 적절히 형변환 해주었습니다.

2. contacts 리스트의 사용

원래 코드

name.add(input1);

수정된 코드

contacts.add({'name': input1, 'phone': input2});

원래 코드에서는 name 리스트에만 이름을 추가하였습니다.
수정된 코드에서는 contacts라는 리스트에 이름과 전화번호를 동시에 저장하는 방식으로 변경되었습니다.

3. ListView.builder에서의 변경

원래 코드

Text(name[i].toString()),

수정된 코드

Text(contacts[i]['name'].toString()),
Text(contacts[i]['phone'].toString()),

ListView.builder에서 아이템을 빌드하는 방식이 변경되었습니다.
원래는 name 리스트만을 사용하여 이름을 표시했지만, 수정된 코드에서는 contacts 리스트를 사용하여 이름과 전화번호를 모두 표시하게 되었습니다.

4. DialogUI 클래스의 변경

원래 코드

if (inputData1 && inputData2 != Null) {

수정된 코드

if (inputData1 != null && inputData2 != null) {

DialogUI에서 OK 버튼을 눌렀을 때의 조건문이 올바르게 수정되었습니다.
Dart 언어에서는 null 체크를 != null로 진행해야 합니다.

profile
쉽게 설명하지 못하면 이해 못한 것

0개의 댓글