質問編集履歴
6
TextFieldがTextFielになっていたため修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -206,7 +206,7 @@
|
|
206
206
|
//検索ボタン押下後の処理
|
207
207
|
onPressed: (_isChangeInput)
|
208
208
|
? () => _searchKeyword()
|
209
|
-
//メッセージ表示条件:TextFielに変更通知がある、TextFielに入力されていない
|
209
|
+
//メッセージ表示条件:TextFieldに変更通知がある、TextFieldに入力されていない
|
210
210
|
: () => ((_textEditController.text
|
211
211
|
.replaceAll(RegExp(r"\s+"), '')) == '')
|
212
212
|
? Fluttertoast.showToast(
|
5
記入場所の間違えの為、再記入
test
CHANGED
File without changes
|
test
CHANGED
@@ -197,3 +197,26 @@
|
|
197
197
|
|
198
198
|
もし、他にもこんな方法があるという方がいらっしゃれば是非教えて頂けるとありがたいです。
|
199
199
|
#####
|
200
|
+
###### アドバイス適応後のコーディング
|
201
|
+
アドバイスを頂いた後に、色々試してみて「Fluttertoast」を以下のように適応してみたところ、今までの中で一番理想形に近づきました。
|
202
|
+
アドバイスありがとうございました。
|
203
|
+
|
204
|
+
```ここに言語を入力
|
205
|
+
--- 省略 -----
|
206
|
+
//検索ボタン押下後の処理
|
207
|
+
onPressed: (_isChangeInput)
|
208
|
+
? () => _searchKeyword()
|
209
|
+
//メッセージ表示条件:TextFielに変更通知がある、TextFielに入力されていない
|
210
|
+
: () => ((_textEditController.text
|
211
|
+
.replaceAll(RegExp(r"\s+"), '')) == '')
|
212
|
+
? Fluttertoast.showToast(
|
213
|
+
msg: "キーワードが未入力です!!",
|
214
|
+
toastLength: Toast.LENGTH_SHORT,
|
215
|
+
backgroundColor: Colors.lightBlue,
|
216
|
+
textColor: Colors.white,
|
217
|
+
fontSize: 20.0)
|
218
|
+
: const SizedBox.shrink()),
|
219
|
+
--- 省略 -----
|
220
|
+
```
|
221
|
+
|
222
|
+
#####
|
4
解答を記入する場所を間違えたため
test
CHANGED
File without changes
|
test
CHANGED
@@ -197,27 +197,3 @@
|
|
197
197
|
|
198
198
|
もし、他にもこんな方法があるという方がいらっしゃれば是非教えて頂けるとありがたいです。
|
199
199
|
#####
|
200
|
-
|
201
|
-
###### アドバイス適応後のコーディング
|
202
|
-
アドバイスを頂いた後に、色々試してみて「Fluttertoast」を以下のように適応してみたところ、今までの中で一番理想形に近づきました。
|
203
|
-
アドバイスありがとうございました。
|
204
|
-
|
205
|
-
```ここに言語を入力
|
206
|
-
--- 省略 -----
|
207
|
-
//検索ボタン押下後の処理
|
208
|
-
onPressed: (_isChangeInput)
|
209
|
-
? () => _searchKeyword()
|
210
|
-
//メッセージ表示条件:TextFielに変更通知がある、TextFielに入力されていない
|
211
|
-
: () => ((_textEditController.text
|
212
|
-
.replaceAll(RegExp(r"\s+"), '')) == '')
|
213
|
-
? Fluttertoast.showToast(
|
214
|
-
msg: "キーワードが未入力です!!",
|
215
|
-
toastLength: Toast.LENGTH_SHORT,
|
216
|
-
backgroundColor: Colors.lightBlue,
|
217
|
-
textColor: Colors.white,
|
218
|
-
fontSize: 20.0)
|
219
|
-
: const SizedBox.shrink()),
|
220
|
-
--- 省略 -----
|
221
|
-
```
|
222
|
-
|
223
|
-
#####
|
3
アドバイスを適応しての結果を記入
test
CHANGED
File without changes
|
test
CHANGED
@@ -197,3 +197,27 @@
|
|
197
197
|
|
198
198
|
もし、他にもこんな方法があるという方がいらっしゃれば是非教えて頂けるとありがたいです。
|
199
199
|
#####
|
200
|
+
|
201
|
+
###### アドバイス適応後のコーディング
|
202
|
+
アドバイスを頂いた後に、色々試してみて「Fluttertoast」を以下のように適応してみたところ、今までの中で一番理想形に近づきました。
|
203
|
+
アドバイスありがとうございました。
|
204
|
+
|
205
|
+
```ここに言語を入力
|
206
|
+
--- 省略 -----
|
207
|
+
//検索ボタン押下後の処理
|
208
|
+
onPressed: (_isChangeInput)
|
209
|
+
? () => _searchKeyword()
|
210
|
+
//メッセージ表示条件:TextFielに変更通知がある、TextFielに入力されていない
|
211
|
+
: () => ((_textEditController.text
|
212
|
+
.replaceAll(RegExp(r"\s+"), '')) == '')
|
213
|
+
? Fluttertoast.showToast(
|
214
|
+
msg: "キーワードが未入力です!!",
|
215
|
+
toastLength: Toast.LENGTH_SHORT,
|
216
|
+
backgroundColor: Colors.lightBlue,
|
217
|
+
textColor: Colors.white,
|
218
|
+
fontSize: 20.0)
|
219
|
+
: const SizedBox.shrink()),
|
220
|
+
--- 省略 -----
|
221
|
+
```
|
222
|
+
|
223
|
+
#####
|
2
進捗があったので追記しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -143,3 +143,57 @@
|
|
143
143
|
|
144
144
|

|
145
145
|
|
146
|
+
#### 進捗があったので追記します
|
147
|
+
ElevatedButtonでの分岐処理を一旦諦めて、以下のように対応してみたところメッセージ表示は出来るようになりました。
|
148
|
+
ただ、この方法が正しいかどうかはわかりません。
|
149
|
+
|
150
|
+
<メッセージ表示の条件>
|
151
|
+
①検索ボタン押下時のフラグをセット
|
152
|
+
②TextFieldの入力値が空(余分な余白を削除後の値)で①のフラグがtureの場合はメッセージ表示
|
153
|
+
|
154
|
+
```ここに言語を入力
|
155
|
+
--- 省略 ---
|
156
|
+
//検索ボタン押下後の処理
|
157
|
+
onPressed: () {
|
158
|
+
if (_isChangeInput) {
|
159
|
+
_searchKeyword();
|
160
|
+
_isButtonClicked = true;
|
161
|
+
} else {
|
162
|
+
_isButtonClicked = false;
|
163
|
+
}
|
164
|
+
--- 省略 ---
|
165
|
+
//メッセージ表示条件:TextFieldに入力値がない&検索ボタン押下された
|
166
|
+
(_textEditController.text.replaceAll(RegExp(r"\s+"), '') == '' &&
|
167
|
+
_isButtonClicked == true)
|
168
|
+
|
169
|
+
? Center(
|
170
|
+
child: Container(
|
171
|
+
height: 40.0,
|
172
|
+
width: 300.0,
|
173
|
+
color: Colors.limeAccent,
|
174
|
+
child: const Text("キーワードが未入力です!!",
|
175
|
+
style: TextStyle(
|
176
|
+
fontSize: 25.0,
|
177
|
+
fontFamily: "ZenGoR",
|
178
|
+
fontWeight: FontWeight.bold,
|
179
|
+
color: Colors.red,
|
180
|
+
shadows: [
|
181
|
+
Shadow(
|
182
|
+
color: Colors.limeAccent,
|
183
|
+
blurRadius: 50.0
|
184
|
+
)
|
185
|
+
]
|
186
|
+
),
|
187
|
+
textAlign: TextAlign.center),
|
188
|
+
),
|
189
|
+
)
|
190
|
+
//何もしない
|
191
|
+
: const SizedBox.shrink(),
|
192
|
+
```
|
193
|
+
|
194
|
+
以下の場合は、まだメッセージの表示が実現できておりませんので、継続して考えています。
|
195
|
+
初めて検索画面を起動した時に、TextFieldに入力せずに検索ボタンを押下した時。
|
196
|
+
(「初めて検索画面を起動した」という状態を判別していないため)
|
197
|
+
|
198
|
+
もし、他にもこんな方法があるという方がいらっしゃれば是非教えて頂けるとありがたいです。
|
199
|
+
#####
|
1
文章に誤りがあったため修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,7 +12,6 @@
|
|
12
12
|
<キーワードを入力せずにボタンを押下した場合に試したこと>
|
13
13
|
●「キーワードが未入力です」のメッセージを表示するために
|
14
14
|
・三項演算子のfalse「:」の後に処理を記載しても表示されない。
|
15
|
-
※(「三項演算子を使ってうまくいかないこと」を参照して下さい。)
|
16
15
|
・「検索」ボタン押下したかどうかのフラグを持たせ、押下した場合の処理を「//検索ボタン押下後の処理」の下に三項演算子を用いてコーディングしたが表示されない。(そもそもこういう書き方が間違っているかもしれません)
|
17
16
|
●判断材料
|
18
17
|
・TextFormFieldが入力されていないかテキストコントローラーの値で判断
|