Je suis nouveau ici, donc je m'excuse à l'avance pour toute erreur qui pourrait enfreindre les règles de cette plate-forme.
J'ai un problème avec le remplissage de mon application Android avec une image d'arrière-plan. J'ai essayé de suivre this , mais j'ai une exception de rendu.
Le code, qui n'utilise pas la classe [SizedBox] ressemble à ceci: p >
return Scaffold(
appBar: new AppBar(title: Text("Progresso nel edilizia")),
body: SingleChildScrollView(
child: Container(
decoration: const BoxDecoration(
image: DecorationImage(
image: AssetImage('assets/login_background.jpg'),
fit: BoxFit.cover
)
),
child: LoginBody(),
)
),
);
La sortie: https://ibb.co/0srf6dN
3 Réponses :
Essayez le code ci-dessous
return Scaffold(
body: Container(
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage("assets/login_background.jpg"),
fit: BoxFit.cover,
),
),
),
);
Cela fonctionne, mais si je me débarrasse de [SingleChildScrollView], j'obtiens une exception de rendu chaque fois que j'appuie sur le champ de texte du mot de passe (image de l'interface utilisateur dans le message).
Essayez ceci, mais assurez-vous que l'image que vous utilisez a un rapport hauteur / largeur correct pour s'adapter à la hauteur.
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: new AppBar(title: Text("Progresso nel edilizia")),
body: SingleChildScrollView(
child: Container(
height: MediaQuery.of(context).size.height,
decoration: const BoxDecoration(
image: DecorationImage(
image: AssetImage('assets/login_background.jpg'),
fit: BoxFit.fitHeight)),
child: Container(),
)),
);
}
Utilisez une pile avec un conteneur en utilisant toute la largeur et la hauteur de l'écran en arrière-plan. Comme ceci:
return Scaffold(
appBar: AppBar(title: Text("Progresso nel edilizia")),
body: Stack(
children: <Widget>[
Container(
width: double.infinity,
height: double.infinity,
decoration: const BoxDecoration(
image: DecorationImage(
image: AssetImage('assets/login_background.jpg'),
fit: BoxFit.cover,
),
),
),
SingleChildScrollView(
child: LoginBody(),
),
],
),
);