android studio任务要求 1.创建一个界面 2.在界面中,使用按钮、开关按钮、进度条对话框,及其他必要组件 3.通过开关按钮,实现同一个文本框显示不同内容。 4.通过进度条对话框,显示下载进度。进度达到100%后,关闭对话框,并在界面中使用一个文本框显示下载完成。代码

时间: 2023-06-16 20:04:48 浏览: 60
下面是一个简单的示例代码,可以实现以上要求: MainActivity.java ```java import android.app.ProgressDialog; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.ProgressBar; import android.widget.Switch; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity implements View.OnClickListener { private EditText editText; private TextView textView; private Switch switchButton; private Button downloadButton; private ProgressBar progressBar; private ProgressDialog progressDialog; private int progress; private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what == 1) { progressDialog.setProgress(progress); if (progress == 100) { progressDialog.dismiss(); textView.setText("下载完成"); } } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = findViewById(R.id.edit_text); textView = findViewById(R.id.text_view); switchButton = findViewById(R.id.switch_button); downloadButton = findViewById(R.id.download_button); progressBar = findViewById(R.id.progress_bar); downloadButton.setOnClickListener(this); progressDialog = new ProgressDialog(MainActivity.this); progressDialog.setTitle("下载中"); progressDialog.setMessage("请稍后..."); progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.download_button: download(); break; } } private void download() { progressDialog.show(); progress = 0; new Thread(new Runnable() { @Override public void run() { while (progress < 100) { try { Thread.sleep(100); progress++; handler.sendEmptyMessage(1); } catch (InterruptedException e) { e.printStackTrace(); } } } }).start(); } public void onSwitchClicked(View view) { boolean checked = ((Switch) view).isChecked(); if (checked) { editText.setText("开关已打开"); } else { editText.setText("开关已关闭"); } } } ``` activity_main.xml ```xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/layout_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <EditText android:id="@+id/edit_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="16dp" android:ems="10" android:hint="请输入内容" android:inputType="textPersonName" android:textAlignment="center" android:textSize="24sp" android:textStyle="bold" /> <Switch android:id="@+id/switch_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/edit_text" android:layout_centerHorizontal="true" android:layout_marginTop="16dp" android:text="开关按钮" android:onClick="onSwitchClicked" /> <Button android:id="@+id/download_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/switch_button" android:layout_centerHorizontal="true" android:layout_marginTop="16dp" android:text="下载" /> <ProgressBar android:id="@+id/progress_bar" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/download_button" android:layout_marginTop="16dp" android:progress="0" android:max="100" android:visibility="visible" /> <TextView android:id="@+id/text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/progress_bar" android:layout_marginTop="16dp" android:textAlignment="center" android:textSize="24sp" android:textStyle="bold" /> </RelativeLayout> ``` 这个示例代码中,界面中包含一个文本框、一个开关按钮、一个下载按钮、一个进度条和一个文本框。 点击下载按钮后,会在界面中弹出一个进度条对话框,模拟下载过程,下载完成后会在文本框中显示“下载完成”。 点击开关按钮后,会在文本框中显示不同的内容,内容根据开关状态而定。

相关推荐

最新推荐

recommend-type

Android中使用Kotlin实现一个简单的登录界面

Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。接下来本文通过实例代码给大家讲解Android中使用Kotlin实现一个简单的登录界面,一起看看吧
recommend-type

android studio按钮监听的5种方法实例详解

主要介绍了android studio按钮监听的5种方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
recommend-type

详解Android Studio实现用户登陆界面demo(xml实现)

主要介绍了详解Android Studio实现用户登陆界面demo,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

Android Studio 利用Splash制作APP启动界面的方法

主要介绍了Android Studio 利用Splash制作APP启动界面,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
recommend-type

解决Android Studio Log.v和Log.d不显示的问题

主要介绍了解决Android Studio Log.v和Log.d不显示的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB正态分布协方差分析:揭示正态分布变量之间的协方差

![MATLAB正态分布协方差分析:揭示正态分布变量之间的协方差](https://site.cdn.mengte.online/official/2021/11/20211128213137293.png) # 1. 正态分布概述 正态分布,又称高斯分布,是统计学中最重要的连续概率分布之一。它广泛应用于自然科学、社会科学和工程领域。 正态分布的概率密度函数为: ``` f(x) = (1 / (σ√(2π))) * exp(-(x - μ)² / (2σ²)) ``` 其中: - μ:正态分布的均值 - σ:正态分布的标准差 - π:圆周率 正态分布具有以下特性: - 对称性:
recommend-type

我正在开发一款个人碳足迹计算app,如何撰写其需求分析文档,请给我一个范例

为了更全面、清晰地定义个人碳足迹计算app的需求,需求分析文档应该包含以下内容: 1.项目简介:对该app项目的概述及目标进行说明。 2.用户分析:包括目标用户群、用户需求、行为等。 3.功能需求:对app的基本功能进行定义,如用户登录、数据录入、数据统计等。 4.非功能需求:对使用app的性能和质量等进行定义,如界面设计、数据安全、可扩展性等。 5.运行环境:包括app的开发环境和使用环境。 下面是一个范例: 需求分析文档 1. 项目简介 该app项目旨在为用户提供一款方便、易用、可定制的个人碳足迹计算平台,以促进环保和可持续性发展。 2. 用户分析 目标用户群:全球关
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。