๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋š๋”ฑ๊ฐœ๋ฐœ ๐Ÿ”จ

[์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ] ํ”Œ๋Ÿฌํ„ฐ(Flutter)๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•ฑ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ - 2์ฃผ์ฐจ ๊ฐœ๋ฐœ์ผ์ง€ โ‘ก ๋ณธ๋ฌธ

๊ฐœ๋ฐœ/๐ŸŽฏ Flutter

[์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ] ํ”Œ๋Ÿฌํ„ฐ(Flutter)๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•ฑ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ - 2์ฃผ์ฐจ ๊ฐœ๋ฐœ์ผ์ง€ โ‘ก

๋š๋”ฑ๊ฐœ๋ฐœ์ž ๐Ÿ”ง 2023. 11. 13. 21:54
๋ฐ˜์‘ํ˜•

4. ํŒŒ์ผ ๋ถ„๋ฆฌ

์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์งˆ์ˆ˜๋ก ์ฝ”๋“œ๋ฅผ ์ฐพ๋Š” ์‹œ๊ฐ„์ด ๊ธธ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ์ผ์„ ๋ถ„๋ฆฌ(์œ„์ ฏ๋“ค์„ ๊ฐ๊ฐ ๋‹ค๋ฅธ ํŒŒ์ผ์— ๋ถ„๋ฆฌ)

๋ฆฌํŒฉํ† ๋ง(refectoring)

๊ธฐ๋Šฅ์„ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š๊ณ , ์ฝ”๋“œ๋งŒ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋ณ€๊ฒฝํ•˜๋Š” ๊ณผ์ •

 

* ๋ณต์žก๋„๊ฐ€ ์˜ฌ๋ผ๊ฐˆ์ˆ˜๋ก ์ฃผ๊ธฐ์ ์ธ ๋ฆฌํŒฉํ† ๋ง์„ ํ†ตํ•ด ๋ณต์žก๋„๋ฅผ ๋‚ฎ์ถฐ์ค˜์•ผ ํ•œ๋‹ค.(ํ˜‘์—…์—์„œ ์ค‘์š”)

5. ์ข‹์•„์š” ๊ตฌํ˜„ํ•˜๊ธฐ & ํ”ผ๋“œ ๋ฆฌ์ŠคํŠธ ๋งŒ๋“ค๊ธฐ

์‚ผํ•ญ์—ฐ์‚ฐ์ž

์กฐ๊ฑด์ด true์ธ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜๊ฐ’1์ด ํ• ๋‹น๋˜๊ณ , false์ธ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜๊ฐ’2๊ฐ€ ํ• ๋‹น

์กฐ๊ฑด ? ๋ฐ˜ํ™˜๊ฐ’ 1 : ๋ฐ˜ํ™˜๊ฐ’2

 

ListView ์œ„์ ฏ

๋™์ผํ•œ ๋ ˆ์ด์•„์›ƒ์— ๋‹ค๋ฅธ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค„ ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ์œ ์šฉ

ListView.builder(
  itemCount: 100, // ์ „์ฒด ์•„์ดํ…œ ๊ฐœ์ˆ˜
  itemBuilder: (context, index) { // index๋Š” 0 ๋ถ€ํ„ฐ 99๊นŒ์ง€ ์ฆ๊ฐ€
		return Text("$index"); // 100๋ฒˆ ์‹คํ–‰
  }
),

children์„ ์ง์ ‘ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ ListView.builder()๋กœ itemCount๋งŒํผ ๋ฐ˜๋ณต

6. ํ”ผ๋“œ๋งˆ๋‹ค ๊ฐ๊ฐ ๋‹ค๋ฅธ ์ด๋ฏธ์ง€ ๋ณด์—ฌ์ฃผ๊ธฐ

class feed extends StatefulWidget {
  const feed({
    super.key,
    required this.imageUrl,
  });

  final String imageUrl; // ์ด๋ฏธ์ง€๋ฅผ ๋‹ด์„ ๋ณ€์ˆ˜

  @override
  State<feed> createState() => _feedState();
}

required

ํ•„์ˆ˜ ์ „๋‹ฌ ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ ๋งŒ๋“ค์–ด์ง„๋‹ค.

this.imageUrl

๋งŽ์€ Feed ์ธ์Šคํ„ด์Šค ์ค‘ ํ˜„์žฌ ์ธ์Šคํ„ด์Šค์˜ imageUrl

ClipRRect(
  borderRadius: BorderRadius.circular(8),
  // ์ด๋ฏธ์ง€
  child: Image.network(
    widget.imageUrl,
    width: 100,
    height: 100,
    fit: BoxFit.cover,
  ),
),

widget.๋ณ€์ˆ˜๋ช…

StatefulWidget ์ƒํƒœ ํด๋ž˜์Šค์—์„œ widget.๋ณ€์ˆ˜๋ช…์œผ๋กœ ์ „๋‹ฌ๋ฐ›์€ ๋ณ€์ˆ˜์— ์ ‘๊ทผ


View(๋ทฐ)

๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ป๋ฐ๊ธฐ, view์™€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„๋ฆฌํ•˜๋ฉด view๋ฅผ ์žฌํ™œ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋‹น๊ทผ๋งˆ์ผ“ ๋งŒ๋“ค๊ธฐ ์™„์„ฑ!!

๋ฐ˜์‘ํ˜•