当前位置:   article > 正文

Android记事本NotePad应用功能拓展,华为架构师深入讲解Android开发_安卓notepad

安卓notepad

tv_content.setText(allText);

tv_time.setText(noteList.get(position).getTime());

//Save note id to tag

v.setTag(noteList.get(position).getId());

return v;

}

@Override

public Filter getFilter() {

if (mFilter ==null){

mFilter = new MyFilter();

}

return mFilter;

}

class MyFilter extends Filter {

//我们在performFiltering(CharSequence charSequence)这个方法中定义过滤规则

@Override

protected FilterResults performFiltering(CharSequence charSequence) {

FilterResults result = new FilterResults();

List list;

if (TextUtils.isEmpty(charSequence)) {//当过滤的关键字为空的时候,我们则显示所有的数据

list = backList;

} else {//否则把符合条件的数据对象添加到集合中

list = new ArrayList<>();

for (Note note : backList) {

if (note.getContent().contains(charSequence)) {

list.add(note);

}

}

}

result.values = list; //将得到的集合保存到FilterResults的value变量中

result.count = list.size();//将集合的大小保存到FilterResults的count变量中

return result;

}

//在publishResults方法中告诉适配器更新界面

@Override

protected void publishResults(CharSequence charSequence, FilterResults filterResults) {

noteList = (List)filterResults.values;

if (filterResults.count>0){

notifyDataSetChanged();//通知数据发生了改变

}else {

notifyDataSetInvalidated();//通知数据失效

}

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OHSvPvfh-1591379236978)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]

3.设置功能(初步实现)

setting_layout.xml里面找找。

4.优化删除功能

部分删除

@Override

public boolean onOptionsItemSelected(MenuItem item){

switch (item.getItemId()){

case R.id.delete:

new AlertDialog.Builder(EditActivity.this)

.setMessage(“您确定删除吗?”)

.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

if (openMode == 4){ // new note

intent.putExtra(“mode”, -1);

setResult(RESULT_OK, intent);

}

else { // existing note

intent.putExtra(“mode”, 2);

intent.putExtra(“id”, id);

setResult(RESULT_OK, intent);

}

finish();

}

}).setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

dialog.dismiss();

}

}).create().show();

break;

}

return super.onOptionsItemSelected(item);

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Avnbc5Wd-1591379236981)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]

全部删除

@Override

public boolean onOptionsItemSelected(MenuItem item){

switch (item.getItemId()){

case R.id.menu_clear:

new AlertDialog.Builder(MainActivity.this)

.setMessage(“您确定删除全部吗?”)

.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

dbHelper = new NoteDatabase(context);

SQLiteDatabase db = dbHelper.getWritableDatabase();

db.delete(“notes”, null, null);

db.execSQL(“update sqlite_sequence set seq=0 where name=‘notes’”);

refreshListView();

}

}).setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

dialog.dismiss();

}

}).create().show();

break;

}

return super.onOptionsItemSelected(item);

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aBqCM35E-1591379236984)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]

三、后期计划


 UI美化

img

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ox2GGctm-1591379236986)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]

 更改记事本的背景

img

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hN8SuSX1-1591379236989)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

最后

说一千道一万,不如自己去行动。要想在移动互联网的下半场是自己占有一席之地,那就得从现在开始,从今天开始,马上严格要求自己,既重视业务实现能力,也重视基础和原理。基础夯实好了,高楼才能够平地而起,稳如泰山。

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2020-2021面试真题解析,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节

还有 高级架构技术进阶脑图、Android开发面试专题资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

一线互联网面试专题

379页的Android进阶知识大全

379页的Android进阶知识大全

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

少精力),包知识脉络 + 诸多细节

还有 高级架构技术进阶脑图、Android开发面试专题资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

[外链图片转存中…(img-ocnGyk5i-1711635799812)]

[外链图片转存中…(img-u56S4ooQ-1711635799813)]

[外链图片转存中…(img-Rv27IBzR-1711635799813)]

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/804390
推荐阅读
相关标签
  

闽ICP备14008679号