F' Flutter, tista' tifformattja d-dehra u sensazzjoni tal-applikazzjoni tiegħek billi tuża ThemeData u tippersonalizza l- styles. ThemeData hija klassi li fiha proprjetajiet biex tiddefinixxi l-kulur dominanti styles, fonts, padding, eċċ għall-applikazzjoni kollha. Custom Style jippermettilek tippersonalizza styles għal kull speċifiku Widget. Hawn huma struzzjonijiet dettaljati dwar kif tuża ThemeData u Custom Styles fi Flutter:
ThemeData
Fi Flutter, ThemeData hija klassi li fiha attributi biex tiddefinixxi l-kulur primarju, il-familja tat-tipa, padding u ħafna għażliet oħra ta 'grafika għall-applikazzjoni kollha. Billi tuża ThemeData, tista' malajr tibdel id-dehra ġenerali tal-app tiegħek mingħajr ma jkollok bżonn timmodifika kull individwu Widget.
Attributi komuni ta ThemeData ':
primaryColor
: Il-kulur primarju għall-elementi ewlenin tal-app, bħall-istrixxa tal-app, buttuni, eċċ.accentColor
: Il-kulur tal-aċċent għal elementi sekondarji jew punti ewlenin fl-IU, bħal FloatingActionButton.backgroundColor
: Il-kulur tal-isfond għall-app kollha.textTheme
: Jiddefinixxi t-test primarju styles għal elementi tat-test differenti fl-app, bħal intestaturi, test tal-korp, eċċ.textTheme.headline1
: Stil tat-test għall-livell tal-intestatura 1.textTheme.headline2
: Stil tat-test għall-livell 2 tal-intestatura.textTheme.bodyText1
: Stil tat-test għat-test tal-korp prinċipali.
MaterialApp(
theme: ThemeData(
primaryColor: Colors.blue, // Dominant colors for title bars, buttons, etc.
accentColor: Colors.green, // Primary color for secondary elements eg FloatingActionButton
fontFamily: 'Roboto', // The main font for the whole application
textTheme: TextTheme( // Dominant text styles for in-app texts
headline1: TextStyle(fontSize: 36, fontWeight: FontWeight.bold),
headline2: TextStyle(fontSize: 30, fontWeight: FontWeight.w500),
bodyText1: TextStyle(fontSize: 16),
),
),
home: MyHomePage(),
)
Stil Custom
Custom Styles jippermettilek tippersonalizza l-istil għal kull speċifiku Widget. Billi tuża l- style
attribut ta 'Widgets bħal Test, Container, RaisedButton, eċċ., Tista' tbiddel it-tipa, il-kulur, id-daqs tat-test, padding, u diversi attributi oħra.
Attributi komuni ta' TextStyle(użati għal Text Widget):
fontSize
: Id-daqs tat-tipa.fontWeight
: Il-piż tat-tipa.color
: Il-kulur tat-test.fontStyle
: L-istil tat-tipa, bħal skuri, korsiv.letterSpacing
: L-ispazjar bejn il-karattri.wordSpacing
: L-ispazjar bejn il-kliem.decoration
: Id-dekorazzjoni tat-test, bħal issottolinjat, strajjat.
Eżempju bl-użu Custom Styles:
Text(
'Chào bạn',
style: TextStyle(fontSize: 24, color: Colors.red, fontWeight: FontWeight.bold),
)
Container(
width: 100,
height: 100,
color: Colors.blue,
padding: EdgeInsets.all(8),
child: Text('Container', style: TextStyle(fontSize: 18, color: Colors.white)),
)
Bl-użu Themes u Styles bil MediaQuery
Tista 'tgħaqqad Themes u Styles ma' MediaQuery biex taġġusta l-UI abbażi tad-daqs tal-iskrin jew ir-riżoluzzjoni tal-apparat.
Eżempju:
MediaQuery(
data: MediaQuery.of(context).copyWith(textScaleFactor: 1.5),
child: Text('The text will be scaled 1.5 times larger than the default size'),
)
Konklużjoni:
Flutter jipprovdi għodda qawwija biex tifformattja l-IU tal-applikazzjoni tiegħek. Billi tuża ThemeData u tippersonalizza Styles, tista 'faċilment taġġusta elementi tal-UI bħal kuluri, fonts, daqsijiet tat-test, eċċ., biex toħloq interface sabiħa u ta' involviment għall-app tiegħek.