用Android Stdio写一个布局和代码,要求基于Activity的生命周期方法,利用SharerdPreferences类设计一个便签条,记录当天的安排,可以随时打开便签进行修改,修改后自动保存修改
时间: 2024-02-23 10:02:36 浏览: 95
基于android的便签系统实习作业
3星 · 编辑精心推荐
好的,下面是一个简单的基于 Activity 生命周期和 SharedPreferences 的便签条应用的代码示例:
1. MainActivity.java
```java
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Locale;
public class MainActivity extends AppCompatActivity {
private EditText mEditText;
private SharedPreferences mSharedPreferences;
private String mCurrentDate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取当前日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
mCurrentDate = sdf.format(Calendar.getInstance().getTime());
mEditText = findViewById(R.id.edit_text);
mSharedPreferences = getSharedPreferences("notes", MODE_PRIVATE);
// 从 SharedPreferences 中读取当天的安排信息,并展示在界面上
String note = mSharedPreferences.getString(mCurrentDate, "");
mEditText.setText(note);
}
@Override
protected void onPause() {
super.onPause();
// 将当前的安排信息保存到 SharedPreferences 中
mSharedPreferences.edit().putString(mCurrentDate, mEditText.getText().toString()).apply();
}
}
```
2. 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">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="当天安排"
android:textAppearance="@style/TextAppearance.AppCompat.Large"/>
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:hint="请输入当天的安排"/>
</LinearLayout>
```
这个示例应用中,我们在 onCreate() 方法中获取当前日期,并从 SharedPreferences 中读取当天的安排信息,展示在界面上。在 onPause() 方法中,我们将当前的安排信息保存到 SharedPreferences 中。
这样,当用户打开便签条时,就可以看到最新的安排信息,并且可以随时修改并保存。注意,这只是一个简单的示例,实际应用中还需要考虑一些细节问题,比如用户退出应用时是否需要保存数据等。
阅读全文