No desenvolvimento de aplicativos Android, existem duas maneiras principais de implementar barras de progresso: usando o controle ProgressBar fornecido pelo sistema e personalizando a visualização da barra de progresso. O controle ProgressBar é simples e fácil de usar e adequado para a maioria dos cenários; a barra de progresso personalizada é mais flexível e pode obter efeitos visuais personalizados. O editor de Downcodes explicará em detalhes como usar o controle ProgressBar e como personalizar a visualização da barra de progresso, e apresentará o mecanismo de monitoramento de atualização de progresso para ajudar os desenvolvedores a dominar melhor as habilidades de desenvolvimento das barras de progresso do Android.
No desenvolvimento de aplicativos Android, existem duas maneiras principais de implementar barras de progresso: usando o controle ProgressBar e personalizando a visualização da barra de progresso. O controle ProgressBar é um componente fornecido pelo Android para exibir informações de progresso. Ele pode exibir o progresso atual da operação por meio de configuração simples de layout e controle de código. A barra de progresso personalizada permite que os desenvolvedores projetem com mais flexibilidade o estilo e o comportamento da exibição do progresso, o que é adequado para cenários que exigem efeitos visuais especiais.
A seguir, apresentaremos detalhadamente como usar o controle ProgressBar para implementar uma barra de progresso. Este método é a maneira mais direta e comum de implementar uma barra de progresso. O controle ProgressBar oferece suporte a dois modos: modo determinado (determinado) e modo indeterminado (indeterminado). No modo de determinação, a barra de progresso exibirá o progresso correspondente de acordo com a alteração do valor do progresso, que normalmente é usado para exibir a porcentagem de conclusão de uma operação. No modo indeterminado, a barra de progresso continuará a ser animada e geralmente é usada para indicar operações em andamento, mas não indica claramente a porcentagem de conclusão.
Defina ProgressBar no arquivo de layout Você pode definir o atributo style como @android:style/Widget.ProgressBar.Horizontal para exibir a barra de progresso em um estilo horizontal e, em seguida, controlar o progresso da barra de progresso por meio do código na atividade.
Arquivo de layout (atividade_mAIn.xml):
android:id=@+id/progressBar android:layout_width=match_parent android:layout_height=wrap_content estilo=@android:style/Widget.ProgressBar.Horizontal andróide:progresso=25 /> Use na atividade: classe pública MainActivity estende AppCompatActivity { @Substituir protegido void onCreate (pacote salvoInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ProgressBar progressBar = findViewById(R.id.progressBar); progressBar.setProgress(50); //Defina o progresso para 50% } } Semelhante ao modo determinado, ProgressBar é definido no arquivo de layout, mas não precisa especificar o atributo de estilo. ProgressBar está no modo indeterminado por padrão. android:id=@+id/progressBar2 android:layout_width=wrap_content android:layout_height=wrap_content /> Em Activity, você pode controlar sua exibição ou ocultação para indicar que uma operação está em andamento: ProgressBar progressBar2 = findViewById(R.id.progressBar2); //Exibe a barra de progresso do modo indeterminado progressBar2.setVisibility(View.VISIBLE); //Oculta a barra de progresso após a conclusão de uma operação progressBar2.setVisibility(View.GONE); As barras de progresso personalizadas permitem controlar totalmente o método de desenho e o comportamento da barra de progresso, herdando a classe View e substituindo o método onDraw(). Você pode desenhar um círculo, linha ou qualquer outro formato da barra de progresso de acordo com suas necessidades e pode personalizar sua cor, animação, etc. Primeiro crie uma classe que herda de View, defina as propriedades da barra de progresso, como cor, progresso, etc., e desenhe a barra de progresso com base nessas propriedades no método onDraw(). classe pública CustomProgressBar estende a visualização { pintura privada; progresso interno privado = 0; public CustomProgressBar(contexto de contexto, atributos AttributeSet) { super(contexto, atributos); pintar = novo pintar(); paint.setColor(Color.BLUE); } @Substituir void protegido onDraw(Tela de tela) { super.onDraw(tela); //Desenhe uma barra de progresso aqui com base no progresso } public void setProgress(int progresso) { this.progress = progresso; invalidate(); // Notifica a view para redesenhar } } Use um controle de barra de progresso personalizado no arquivo de layout e defina o progresso por meio do código. android:id=@+id/customProgressBar android:layout_width=match_parent android:layout_height=wrap_content /> Controle o progresso na atividade: CustomProgressBar customProgressBar = findViewById(R.id.customProgressBar); customProgressBar.setProgress(75); //Defina o progresso da barra de progresso personalizada para 75% Quer você use o controle ProgressBar ou uma barra de progresso personalizada, poderá implementar um mecanismo de monitoramento para atualizações de progresso. Isso permite executar operações específicas quando o progresso muda, como mostrar ou ocultar determinadas visualizações ou atualizar informações de texto, etc. Embora ProgressBar não tenha um método direto para definir um ouvinte para alterações de progresso, o efeito de escuta pode ser alcançado indiretamente adicionando código antes e depois de definir o progresso. // Suponha que esteja em um cenário de download de arquivo ProgressBar progressBar = findViewById(R.id.progressBar); int progresso atual = 0; //Atualização do progresso do download do arquivo progresso atual += 10; progressBar.setProgress(atualProgress); //Executa as operações correspondentes aqui com base no valor de currentProgress Na implementação de uma barra de progresso personalizada, você pode adicionar diretamente a lógica de monitoramento para alterações de progresso no método de configuração do progresso. public void setProgress(int progresso) { this.progress = progresso; invalidate(); // Notifica a view para redesenhar if (this.progressListener! = nulo) { this.progressListener.onProgressUpdate(progresso); } } Desta forma, implementar uma barra de progresso em uma aplicação pode não apenas mostrar ao usuário o andamento da operação, mas também executar a lógica de negócio correspondente com base no progresso, melhorando assim a experiência do usuário. Pergunta: Como adicionar um componente de barra de progresso no Android? Resposta: Para implementar uma barra de progresso em seu aplicativo Android, você pode seguir estas etapas: P: Como implementar a animação da barra de progresso no Android? Resposta: Para obter o efeito de animação da barra de progresso, você pode tentar os seguintes métodos: Pergunta: Como implementar diferentes estilos de barras de progresso no Android? Resposta: Para implementar diferentes estilos de barras de progresso, você pode considerar os dois métodos a seguir: Espero que este tutorial possa ajudá-lo a entender e usar melhor a barra de progresso no Android. O editor de Downcodes continuará trazendo a você mais habilidades de desenvolvimento Android e compartilhamento de experiências, portanto, fique atento! Usando ProgressBar em modo indeterminado
2. Personalize a visualização da barra de progresso
Crie uma classe de barra de progresso personalizada
Use a barra de progresso personalizada no layout
3. Monitoramento de atualização de progresso
Configure um ouvinte para ProgressBar
Monitoramento de progresso da barra de progresso personalizada
Perguntas frequentes relacionadas: