Android studio写出关于记事本APP的代码
时间: 2024-11-17 21:09:47 浏览: 42
创建一个简单的记事本应用在Android Studio通常涉及到几个步骤,包括设置布局、处理用户输入和保存文件等。以下是一个简化的示例,展示如何创建一个基本的文本编辑器:
首先,打开Android Studio,新建一个`Empty Activity`项目。然后,在`activity_main.xml`布局文件里,添加一个`EditText`用于用户输入文字,以及一个`Button`用于保存。
```xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入内容" />
<Button
android:id="@+id/save_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="保存" />
</LinearLayout>
```
在MainActivity.java中,你需要获取这些视图,并处理点击事件。例如,当点击“保存”按钮时,你可以读取EditText的内容并保存到文件:
```java
import android.content.Context;
import android.os.Environment;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private EditText editText;
private Button saveButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText = findViewById(R.id.edit_text);
saveButton = findViewById(R.id.save_button);
saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String content = editText.getText().toString();
saveToFile(content);
}
});
}
private void saveToFile(String content) {
Context context = getApplicationContext();
String externalStorageDir = Environment.getExternalStorageDirectory().getPath() + "/NotePad/";
if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
// 外部存储不可用
return;
}
File dir = new File(externalStorageDir);
if (!dir.exists()) {
boolean created = dir.mkdirs(); // 创建目录如果不存在
if (!created) {
// 目录创建失败
return;
}
}
File file = new File(dir, "notes.txt");
try (FileWriter writer = new FileWriter(file)) {
writer.write(content);
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这只是一个基础的记事本应用,实际应用中可能还需要考虑错误处理、读取已存在的文件等功能。
阅读全文