์ฌ์ฉ์๊ฐ ๋ค๋ฅธ ๊ณณ์ ๋ง์ง ๋๊น์ง textField์ hintText๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์ถ์ต๋๋ค.
ํฐ์น ํฌ์ธํธ๋ ์์ ฏ ํธ๋ฆฌ ๊น์์ด ์์ ์ ์์ผ๋ฉฐ ์์ ฏ ํธ๋ฆฌ ์ด๋๊ฐ์์ ํ์ฌ ์ด์ ์ด ๋ง์ถฐ์ง ๋
ธ๋๋ฅผ ๊ฐ์ ธ์ ์ด์ ์ด ๋ง์ง ์์ ์ํ๋ก ํธ์ถํ๊ณ , textField๋ฅผ ๋นํ์ฑํํ๊ณ ํค๋ณด๋๋ฅผ ์จ๊ธฐ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์ด๊ฒ์ ์์ ๊ฐ ๋ถ์กฑํ๊ณ ํจํด ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์ค๋ช
ํ์ง ์๋ ๋ฌธ์ ๋๋ ํ๋ฌํฐ์ ๋ํ ๋ด ์ดํด์ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค.
์ฝ๋ ์์ ๋ ๋ ธ๋์์ unfocus๋ฅผ ํธ์ถํ๋ GestureDetector๋ฅผ ๋ณด์ฌ์ค๋๋ค. focusNode๋ ๋์ผํ ์์ ฏ์์ ์ฝ๊ฒ ์ก์ธ์คํ ์ ์๊ธฐ ๋๋ฌธ์ ์ฌ๊ธฐ์์๋ ๊ฐ๋จํฉ๋๋ค. ์ฌ๊ธฐ์ ๋ฌธ์ ๋ ์ค์ฒฉ๋ ์์ ฏ ํธ๋ฆฌ์์ ๋์ผํ ์์ ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ๊ทธ๋ ๊ฒ ํ๊ธฐ ์ํด ๊ถ์ฅ๋๋ ํจํด์ ๋ฌด์์ ๋๊น?
<strong i="9">@override</strong>
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBar(
title: new Text(widget.title),
),
body: new Stack(children: <Widget>[
new GestureDetector(
excludeFromSemantics: true,
onTapDown: (_) {
_focusNode.unfocus();
}),
new Column(children: <Widget>[
new TextField(
focusNode: _focusNode,
decoration: new InputDecoration(
border: null,
hintText: _focusNode.hasFocus ? 'FOCUS' : 'no focus')),
new RaisedButton(
child: new Text('Remove Focus'),
onPressed: () => _focusNode.unfocus())
])
]));
}
final FocusNode _focusNode = new FocusNode();
<strong i="10">@override</strong>
void initState() {
super.initState();
_focusNode.addListener(() {
setState(() {});
print('Has focus: $_focusNode.hasFocus');
});
}
[โ] Flutter (on Microsoft Windows [Version 10.0.16299.192], locale en-US, channel dev)
โข Flutter version 0.0.21 at c:\sdks\flutter
โข Framework revision 2e449f06f0 (2 days ago), 2018-01-29 14:26:51 -0800
โข Engine revision 6921873c71
โข Tools Dart version 2.0.0-dev.16.0
โข Engine Dart version 2.0.0-edge.da1f52592ef73fe3afa485385cb995b9aec0181a
[โ] Android toolchain - develop for Android devices (Android SDK 27.0.2)
โข Android SDK at C:\Users\ride4\AppData\Local\Android\sdk
โข Android NDK location not configured (optional; useful for native profiling support)
โข Platform android-27, build-tools 27.0.2
โข Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
โข Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[โ] Android Studio (version 3.0)
โข Android Studio at C:\Program Files\Android\Android Studio
โข Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[โ] IntelliJ IDEA Community Edition (version 2017.2)
โข Flutter plugin version 19.1
โข Dart plugin version 172.4343.25
[โ] Connected devices
โข Android SDK built for x86 โข emulator-5554 โข android-x86 โข Android 7.1.1 (API 25) (emulator)
๋๋ ์ด๊ฒ์ด ๊ท๊ฒฐ๋๋ค๊ณ ์๊ฐํ๋ค.
FocusScope.of(context).requestFocus(new FocusNode());
#7247์ ์ค๋ณต์ผ๋ก ๋ซ๊ธฐ
์๋ง๋ ๋ํ #20227
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋๋ ์ด๊ฒ์ด ๊ท๊ฒฐ๋๋ค๊ณ ์๊ฐํ๋ค.
#7247์ ์ค๋ณต์ผ๋ก ๋ซ๊ธฐ
์๋ง๋ ๋ํ #20227