Android Studio 货币转换器示例教程
时间: 2025-01-04 10:35:28 浏览: 5
### 创建货币转换器应用程序
#### 准备工作环境
为了开发一个简单的货币转换器应用,在启动编码之前,需确保已安装最新版本的 Android Studio。创建一个新的项目并选择“Empty Activity”,设置项目的语言为 Java 或 Kotlin。
#### 设计用户界面 (UI)
在 `res/layout/activity_main.xml` 文件中定义布局文件来构建用户交互界面:
```xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp">
<!-- 输入金额 -->
<EditText
android:id="@+id/amount_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter amount"
android:inputType="numberDecimal"/>
<!-- 转换按钮 -->
<Button
android:id="@+id/convert_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Convert"/>
<!-- 显示结果 -->
<TextView
android:id="@+id/result_textview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24sp"
android:gravity="center_horizontal"
android:paddingTop="20dp"/>
</LinearLayout>
```
此部分描述了如何设计基本的应用程序界面[^1]。
#### 实现逻辑功能
接下来是在 MainActivity.java 中实现主要业务逻辑。这里假设有一个固定的汇率用于演示目的:
```java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private EditText inputAmount;
private Button convertBtn;
private TextView resultText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化视图组件
inputAmount = findViewById(R.id.amount_input);
convertBtn = findViewById(R.id.convert_button);
resultText = findViewById(R.id.result_textview);
// 设置点击事件监听器
convertBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
double usdToEurRate = 0.9; // 假设美元到欧元的固定比率
String userInput = inputAmount.getText().toString();
if (!userInput.isEmpty()) {
double dollars = Double.parseDouble(userInput);
double euros = dollars * usdToEurRate;
resultText.setText(String.format("%.2f USD is %.2f EUR", dollars, euros));
} else {
resultText.setText("Please enter an amount");
}
} catch (NumberFormatException e) {
resultText.setText("Invalid number format");
}
}
});
}
}
```
上述代码展示了如何处理用户的输入以及执行实际的货币转换操作。
#### 添加必要的依赖项和支持库
对于更复杂的功能需求,可能还需要引入额外的支持库,比如使用 Retrofit 进行网络请求获取实时汇率数据等。此时可以考虑添加相应的 Gradle 依赖项,并利用注解优化代码质量[^2]。
#### 自定义资源文件
如果希望进一步定制化应用外观,则可以在 `res/values/styles.xml` 和其他相关 XML 文件内调整主题样式和其他视觉属性[^3]。
阅读全文