android备忘录教学_android备忘录教学_Android Studio-备忘录功能实现
终于,Android作业弄完了,最后一个,备忘录教学。
相关安卓教学内容:
首先第一步,还是老样子,创建一个NoteActivity。
image.png
第二步,打开activity_note.xml,开始布局,话不多说了,关于这一块的内容我在登录,注册当中已经教学的很详细了,直接上代码吧,反正我码再多字估计你们也不看....
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".NoteActivity"
android:background="@drawable/notebg">
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="备忘录"
android:textSize="30dp"/>
android:id="@+id/editText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:minLines="17"
android:inputType="textMultiLine"
android:hint="点击此处输入文字"
android:background="@null"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_alignParentStart="true"
android:layout_above="@+id/button4"
android:layout_alignParentEnd="true"
android:layout_below="@+id/textView3"
android:gravity="left|top"
android:textSize="20dp"/>
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="保存"
android:layout_alignParentBottom="true"
android:layout_alignStart="@+id/editText3" />
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="重置"
android:layout_alignParentBottom="true"
android:layout_alignEnd="@+id/editText3" />
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/textView3"
android:layout_alignEnd="@+id/editText3"
android:text="0个字" />
效果如下:怎么样,看上去还不错吧?
image.png
接下来打开NoteActivity,直接上代码,不想码注释了,码了也没人看,反正你们最喜欢的就是复制粘贴代码
package com.wxy.homework;
import android.content.Context;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.KeyEvent;
import android.view.View;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class NoteActivity extends AppCompatActivity {
private EditText inputInfo;
private Button save;
private Button reset;
private TextView count;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_note);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setFullScreen();
hideBar();
inputInfo = (EditText) findViewById(R.id.editText3);
save = (Button) findViewById(R.id.button4);
reset = (Button) findViewById(R.id.button5);
count = (TextView)findViewById(R.id.textView4);
inputInfo.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void afterTextChanged(Editable editable) {
count.setText(inputInfo.getText().length()+"个字");
}
});
onload();
inputInfo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
inputInfo.setCursorVisible(true);
}
});
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FileOutputStream fos = null;
try{
fos = openFileOutput("txt", Context.MODE_PRIVATE);
String text = inputInfo.getText().toString();
fos.write(text.getBytes());
}catch (Exception e){
e.printStackTrace();
}finally {
try{
if(fos!=null){
fos.flush();
Toast.makeText(NoteActivity.this,"保存成功!",Toast.LENGTH_SHORT).show();
fos.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
}
});
reset.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FileOutputStream fos = null;
inputInfo.setText("");
try{
fos = openFileOutput("txt", Context.MODE_PRIVATE);
String text = "";
fos.write(text.getBytes());
}catch (Exception e){
e.printStackTrace();
}finally {
try{
if(fos!=null){
fos.flush();
Toast.makeText(NoteActivity.this,"清空成功!",Toast.LENGTH_SHORT).show();
fos.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
}
});
}
public void onload(){
FileInputStream fis = null;
try{
fis = openFileInput("txt");
if(fis.available()==0){
return;
}else{
byte[] con = new byte[fis.available()];
while(fis.read(con)!=-1){
}
inputInfo.setText(new String(con));
inputInfo.setSelection(inputInfo.getText().length());
inputInfo.setCursorVisible(false);
}
}catch(Exception e){
e.printStackTrace();
}
}
long time;
public boolean onKeyDown(int keyCode, KeyEvent event){
if(keyCode==KeyEvent.KEYCODE_BACK&&event.getAction()==KeyEvent.ACTION_DOWN){
if(System.currentTimeMillis()-time>2000){
Toast.makeText(NoteActivity.this,"再次点击返回键,程序退出",Toast.LENGTH_SHORT).show();
time = System.currentTimeMillis();
}else{
NoteActivity.this.finish();
}
return true;
}
return super.onKeyDown(keyCode,event);
}
private void hideBar(){
ActionBar actionBar = getSupportActionBar();
if(actionBar!=null){
actionBar.hide();
}
}
private void setFullScreen(){
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
}
然后,老师作业要求是,登录之后,直接跳转到备忘录,所以我们要调整启动顺序。打开LoginActivity,
调整启动顺序
image.png
好了,激动人心的时候又到了,直接开始测试
我们输入之前注册的用户名称和密码进行登录
image.png
发现登录成功,完美跳转到备忘录界面
image.png
我们输入任意字符,点击保存,发现保存成功,且下次登录时,直接显示保存的字符
image.png
我们点击右下角的重置,发现备忘录内容全部清空,完美运行
image.png
好了我亲爱的同学们,安卓作业搞定了。
欢迎关注我,我将不定期更新教学博客和技术贴。
android备忘录教学_android备忘录教学_Android Studio-备忘录功能实现相关推荐
- mac备忘录同步android,IOS技巧心得 篇五:iOS备忘录,可实现全平台实时同步,iPhone ipad PC...
IOS技巧心得 篇五:iOS备忘录,可实现全平台实时同步,iPhone ipad PC 2020-01-20 17:47:28 11点赞 54收藏 16评论 前言: 由于生活中越来越多的手机.平板电脑 ...
- android 录屏软件,如何制作教学视频?教学视频录制方法
如何制作教学视频?教学视频录制方法 如今,很多人各种视频上传到在线视频平台(腾讯视频,优酷,土豆等),最近在视频平台上教学视频越来越多,各种方面的老师不仅在学校和学院上课,而且在网络传递知识,就是网络 ...
- android8.0及发布时间,android 8.0什么时候发布_android 8.0发布时间_android 8.0新特性
android 8.0什么时候发布,android 8.0发布时间.Android 8.0新增特性有什么?安卓8.0有哪些新特性?在2017年的I/O开发者大会上,国外设计师推出了一套安卓8.0的概念 ...
- 计算机科目三教学设计,信息技术-教学设计模板(科目三).pdf
信息技术教学设计模板 根据信息技术学科的特点及教学实际,其教学模式为"新课导入--新授教 学--巩固训练--总结强化--作业拓展". 一.新课导入 课堂教学的导入环节,是指上课之初 ...
- 教学感悟 计算机教学,计算机教学心得体会-20210715101406.doc-原创力文档
计算机教学心得体会 [篇一:职业学校计算机专业课教学心得体会] 职业学校计算机专业课教学心得体会 计算机组:唐文 从大学毕业一直任职业学校从事计算机教学工作20 多年,在教学过 程时要注意结合学生的特 ...
- 用计算机写文章教学课件,计算机教学课件
计算机教学课件1 教学目标: 1. 知识目标:了解计算机内部的硬件组成及基本功能:了解计算机最基本的工作流程及各设备的作用. 2. 情感目标:通过教学,了解计算机主要部件的作用及发展历史,从而感受科学 ...
- 苹果备忘录怎么调字体大小_苹果手机备忘录误删了怎么恢复?分享几个新技能...
苹果手机备忘录误删了怎么恢复?利用备忘录来记录一些重要事情是很常见的,像小编会把自己的一些账号和密码保存在备忘录中,不小心忘记密码可以通过备忘录来翻找.如果在备忘录里记录的内容被误删除了怎么办?大家可 ...
- 计算机基础中怎么评价,浅谈职校计算机基础教学中的教学评价
浅谈职校计算机基础教学中的教学评价 在我们具体实施任务驱动法的教学过程中,教学评价是非常重要的环节.教学评价是计算机课 (本文共2页) 阅读全文>> 随着时代的发展,人们对高等教育发展的关 ...
- 计算机教学辅助在教学中的应用研究,云计算辅助教学在高职计算机教学中的应用研究.doc...
云计算辅助教学在高职计算机教学中的应用研究 云计算辅助教学在高职计算机教学中的应用研究 雷鸣 永州职业技术学院 X 关注成功! 加关注后您将方便地在 我的关注中得到本文献的被引频次变化的通知! 新浪微 ...
- 计算机辅助教学( ),27075 计算机辅助教学
高纲1228 江苏省高等教育自学考试大纲 27075计算机辅助教学 江苏技术师范学院编 江苏省高等教育自学考试委员会办公室 一.课程性质及其设置目的与要求 (一)课程性质和特点 <计算机辅助教学 ...
最新文章
- 广东科技学院专插本c语言考卷_广东科技学院第二届红色文化节之红色影视经典配音大赛决赛...
- 星巴克CEO一年赚的还没TikTok网红多???
- Springboot引用外部配置文件
- ASPNet_Compiler学习总结
- iis php session丢失,Session丢失的解决办法小结
- SAP UI5 BindingParser
- c语言编手机蓝牙软件的代码,51单片机C语言的简易蓝牙锁代码
- 砥志研思SVM(四) 序列最小最优化算法(SMO)论文翻译
- 重炉后-文件上传下载
- 方法超出 android,Android工程方法数超过64k,The number of method references in a .dex file cannot exceed 64K....
- python操作内置Sqlite数据库
- union的限制, 临时表大小的优化
- 人工智能与机器学习大牛们的blog
- 黑马程序员全套Java教程_Java基础入门视频教程零基础自学Java必备教程视频讲义(1)
- MQTT.fx工具测试mqtt
- android系统程序卸载,怎样卸载Android系统程序
- RNA-seq流程学习笔记(1)-Ubuntu系统安装SRA数据下载软件Aspera connect和SRT-Toolkit
- 对接支付宝APP支付后端实现最详细教程
- 基于焦散线方法的自加速光束设计
- CSS:“ ”这个符号在css中一般用 arial字体