写一个有登入界面的多页面安卓天气预报代码
时间: 2024-03-10 12:45:27 浏览: 62
多个网页天气预报代码
3星 · 编辑精心推荐
好的,以下是一个简单的安卓天气预报应用的代码示例,其中包含了登录界面和多个天气预报页面,供您参考:
1. 首先,在layout文件夹下创建一个名为activity_login.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:gravity="center"
android:orientation="vertical"
android:padding="16dp">
<EditText
android:id="@+id/et_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="用户名"
android:inputType="text" />
<EditText
android:id="@+id/et_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="密码"
android:inputType="textPassword" />
<Button
android:id="@+id/btn_login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登录" />
</LinearLayout>
```
2. 接着,在layout文件夹下创建一个名为activity_weather.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:gravity="center"
android:orientation="vertical"
android:padding="16dp">
<TextView
android:id="@+id/tv_city"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="24sp" />
<TextView
android:id="@+id/tv_weather"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="18sp" />
<TextView
android:id="@+id/tv_temperature"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="18sp" />
</LinearLayout>
```
3. 在java文件夹下创建一个名为LoginActivity的类文件,用于处理登录界面的事件。
```
public class LoginActivity extends AppCompatActivity {
private EditText etUsername;
private EditText etPassword;
private Button btnLogin;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
etUsername = findViewById(R.id.et_username);
etPassword = findViewById(R.id.et_password);
btnLogin = findViewById(R.id.btn_login);
// 登录按钮点击事件
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = etUsername.getText().toString();
String password = etPassword.getText().toString();
// TODO: 进行登录验证
if ("admin".equals(username) && "123456".equals(password)) {
Intent intent = new Intent(LoginActivity.this, WeatherActivity.class);
startActivity(intent);
finish();
} else {
Toast.makeText(LoginActivity.this, "用户名或密码错误", Toast.LENGTH_SHORT).show();
}
}
});
}
}
```
4. 接着,在java文件夹下创建一个名为WeatherActivity的类文件,用于处理天气预报页面的事件。
```
public class WeatherActivity extends AppCompatActivity {
private TextView tvCity;
private TextView tvWeather;
private TextView tvTemperature;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_weather);
tvCity = findViewById(R.id.tv_city);
tvWeather = findViewById(R.id.tv_weather);
tvTemperature = findViewById(R.id.tv_temperature);
// TODO: 获取天气数据并更新页面
}
}
```
5. 运行程序,首先会显示登录界面,输入用户名和密码后点击登录按钮,即可跳转到天气预报页面,可以在此页面获取并显示天气数据。
这只是一个简单的示例代码,您可以根据自身需求对其进行修改和完善。需要注意的是,由于天气数据需要从网络获取,所以需要进行网络请求并解析返回的数据,这部分内容需要您自行实现。
阅读全文