Flutter에서 앱을 개발하는 동안 버튼을 비활성화하는 방법은 무엇입니까?
버튼은 모든 앱 개발에서 중요한 역할을 합니다. 앱이 가지는 가장 중요한 UI 요소입니다. 앱의 버튼을 누르면 사용자가 탭하면 작업을 수행할 수 있습니다. 그러나 때때로 버튼을 비활성화해야 하는 상황이 발생할 수 있습니다. 이 글은 Flutter 앱에서 버튼을 비활성화하는 간단한 방법을 이해하는 데 도움이 될 것입니다. 완벽한 서비스를 받으려면 플러터 팀을 고용하는 것이 좋습니다.
버튼을 비활성화하는 단계
예를 들어 데이터를 백엔드로 보내는 데 도움이 되는 양식이 있습니다. 사용자가 앱에서 제출 버튼을 클릭하고 아무 조치도 취하지 않았는데도 제출 버튼이 활성화되어 있으면 사용자가 버튼을 다시 클릭할 가능성이 있습니다. 따라서 조치가 수행될 때 사용자를 차단해야 합니다. 이것은 버튼을 비활성화해야만 가능합니다.
사용자에 대한 버튼을 비활성화하면 마지막 작업이 완료될 때까지 사용자가 어떤 작업도 수행하지 못하도록 차단됩니다. 또한 consult Flutter developers 이러한 문제를 해결하고 엔터프라이즈급 소프트웨어를 위한 번거로움 없는 앱 개발 프로세스를 만들 수 있으며 최상의 서비스를 받을 수 있으므로 안심할 수 있습니다.
Flutter에서 버튼을 비활성화하려면 버튼의 압축된 면에 Null 값을 할당하기만 하면 됩니다. Flutter에서 앱을 개발하는 동안 버튼을 비활성화하려면 특정 단계를 따라야 합니다. 단계는 다음과 같습니다.
1 단계
비활성화하려는 버튼을 페이지에 추가하십시오.
2 단계
선택한 버튼 내에서 onPressed 측에 Null 값을 지정해야 합니다.
3단계
이 작업을 마친 후에는 앱을 실행하기만 하면 됩니다.
코드 예:
IconButton(
onPressed: null, //<– SEE HERE
child: const Text(
‘Submit’,
style: TextStyle(fontSize: 24),
),
),
ElavatedButton, IconButton, OutlinedButton, TextButton, FloatingActionButton 등과 같은 다양한 버튼을 비활성화할 수 있습니다.
코드 예:
Column(
children: [
TextField(
controller: myController,
decoration: InputDecoration(labelText: ‘Enter Name’),
),
const ElevatedButton(
onPressed: null,
child: Text(
‘Submit’,
style: TextStyle(fontSize: 24),
),
),
const TextButton(
onPressed: null,
child: Text(
‘Submit’,
style: TextStyle(fontSize: 24),
),
),
const OutlinedButton(
onPressed: null,
child: Text(
‘Submit’,
style: TextStyle(fontSize: 24),
),
),
const FloatingActionButton(
onPressed: null,
child: Text(
‘OK’,
style: TextStyle(fontSize: 24),
),
),
const IconButton(
onPressed: null,
icon: Icon(
Icons.done,
),
)
],
)
TextField가 비어 있는 경우 버튼 비활성화
Flutter에서 앱을 개발하는 동안 버튼을 비활성화하는 기본적인 방법을 살펴보았습니다. 이제 프로그래밍 방식으로 이러한 버튼을 비활성화하거나 활성화하는 방법을 살펴보겠습니다. 문서의 이 부분에서는 상대방 사용자가 TextField에 텍스트를 입력하지 않았거나 TextField에서 텍스트를 제거한 경우 버튼을 비활성화하는 방법을 설명합니다. 이를 위해 따라야 할 특정 단계가 있습니다. 단계는 다음과 같습니다.
1 단계
단추를 비활성화할지 활성화할지 결정하려면 변수를 추가해야 합니다.
부울 제출 = 거짓;
2 단계
.addlistener()를 사용하여 TextField에서 변경된 내용을 듣습니다. 그러나 TextField에 텍스트가 없으면 변수를 추가한 다음 위젯 트리를 다시 빌드해야 합니다.
final myController = TextEditingController();
//———-
@override
void initState() {
// TODO: implement initState
super.initState();
myController.addListener(() {
setState(() {
submit = myController.text.isNotEmpty;
});
});
}
//———–
TextField(
controller: myController,
decoration: InputDecoration(labelText: ‘Enter Name’),
),
3단계
버튼의 압축된 매개변수 안에 넣은 변수를 확인하고 그에 따라 함수나 Null을 반환하여 조치를 취해야 합니다.
ElevatedButton(
onPressed: submit ? () => submitData : null, //<– SEE HERE
child: Text(
‘Submit’,
style: TextStyle(fontSize: 24),
),
),
전체 코드 예:
import ‘package:flutter/foundation.dart’;
import ‘package:flutter/material.dart’;
class DisableButtonDemo extends StatefulWidget {
const DisableButtonDemo({Key? key}) : super(key: key);
@override
State<DisableButtonDemo> createState() => _DisableButtonDemoState();
}
class _DisableButtonDemoState extends State<DisableButtonDemo> {
final myController = TextEditingController();
bool submit = false;
@override
void initState() {
// TODO: implement initState
super.initState();
myController.addListener(() {
setState(() {
submit = myController.text.isNotEmpty;
});
});
}
@override
void dispose() {
// Clean up the controller when the widget is disposed.
myController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () {
FocusManager.instance.primaryFocus?.unfocus();
},
child: Scaffold(
appBar: …,
body: Column(
children: [
TextField(
controller: myController,
decoration: InputDecoration(labelText: ‘Enter Name’),
),
ElevatedButton(
onPressed: submit ? () => submitData : null,
child: Text(
‘Submit’,
style: TextStyle(fontSize: 24),
),
),
],
),
),
);
}
}
submitData() {
// Do something here
}
결론
Flutter에서 앱을 개발하는 동안 버튼을 비활성화하는 것은 버튼을 비활성화함으로써 사용자의 동작을 제어하게 되므로 중요합니다. 이 문서에서는 원하는 경우disable a button on flutter with a few practical 예를 들어 수행해야 하는 단계를 안내했습니다. 이러한 기술을 사용하여 Flutter의 다른 버튼을 비활성화할 수도 있습니다.
Flutter에서 앱을 빌드하는 프로세스를 만들기 위해 Flutter Agency에서 Flutter 팀을 고용하도록 선택할 수도 있습니다. 전문가 팀이 최선의 방법으로 선택한 응용 프로그램을 만드는 데 도움을 줄 것입니다. 이 기사가 도움이 되길 바랍니다. 다음 게시물에서 만나요!
Reference
이 문제에 관하여(Flutter에서 앱을 개발하는 동안 버튼을 비활성화하는 방법은 무엇입니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/pankajdas0909/how-to-disable-button-while-developing-an-app-in-flutter-42h텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)