提示框,菜单,数据存储,组件篇

Toast

Toast.makeText(context, text, 时间).show();

setDuration();//设置时间
setGravity();//位置

获取:

添加toast.getView();
imageView添加到toast中,addView();

LayoutInflater inflater = LayoutInflater.from(this);
View toast_view=inflater.inflate(R.id.,null);
Toast.
Toast.setView(toast_view);

AlertDialog

AlertDialog.Builder

setTitle();
setIcon();
setView();
setItems();setMultiChoiceItems(); 复选
setSingleChoiceItems(); 单选
setNeutralButton();setPositiveButton();
setNegativeButton();
AlertDialog dialog = builder.create(); .show();消失
dialog.dismiss();

Notification通知栏,如接收短信

属性
Notification
setTicker();//手机状态栏的提示
setWhen();//设置时间
setContentTitle();
setContentText();
setContentIntent();Notification notification = builder.build();

OptionsMenu

onCreateOptionsMenu();
动态:menu.add();
监听:onOptionsItemSelected();
public boolean onCreateOptionsMenu(Menu menu){getMenuInflater().inflate(R.menu.main,menu);return true;
}

监听:onOptionsItemSelected

public boolean onOptionsItemSelected(MenuItem item){switch(item.getItemId()){case R.id..:...}
}

ContextMenu上下文菜单

public boolean onCreateItemSelected(MenuItem item){}public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo){super.onCreateContextMenu(menu, v, menuIfo);
}

SubMenu 子菜单

protected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);
}public boolean onCreateOptionsMenu(Menu menu){getMenuInflater().inflate(R.menu.main, menu);return true;//return super.onOptionsItemSelected(item);
}

xml

<menu ...><itemandroid:showAsAction="never"android:title="文件"><menu><itemandroid:id="@+id/.."android:showAsAction="never"android:title="打开"/>
</menu>
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main, menu);

数据存储方式

四种:

  1. SharedPreferences
  2. SQLite
  3. Content Provider
  4. File

SharedPreferences是一种比较轻型的数据存储,基于xml的键值对存储,存储一些简单的信息。

SharedPreferences只能获取数据不能存储和修改,但能通过Editor实现存储修改。

步骤:

  1. 获取SharedPreferences对象
  2. SharedPreferences.Editor
  3. Editor的putXXX的方法
  4. Editor.commit()
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(MainActivity.this);
SharedPreferences sharedPreferences = getSharedPreferences("sharedPreferences", MODE_PRIVATE);
Editor editor = sharedPreferences.edit();
editor.putXXX();
editor.commit();

用户名和密码的存储

sharedPreferences = getSharedPreferences("UserInfo", MODE_PRIVATE);
Editor editor = sharedPreferences.editor();
登录
String name = etName.getText().toString().trim();
String pass = etPass.getText().toString().trim();

SQLite的形式,以单个文件的存储,存储2T内存,以B-Tree形式。

SQLite的数据类型,null,integer,real,text,blob。

  1. SQLiteDatabase
  2. SQLiteOpenHelper
SQLiteDatabase db = openOrCreateDatabase("table.db", MODE_PRIVATE, null);

SQLiteOpenHelper

DBOpenHelper helper = new DBOpenHelper(MainActivity.this, "user.db");
SQLiteDatabase db = helper.getWritableDatabase();
Cursor c = db.rawQuery("select * from user", null);
public DBOpenHelper(Context context, String name, CursorFactory factory, int version){super(context, name, factory, version);
}public void onCreate(SQLiteDatabase db){}public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){}
File file = this.getFilesDir();
File file = this.getCacheDir();//重要文件就不要放在这里

MODE_PRIVATE

默认操作

MODE_APPEND

文件是否存在

public void WriteFiles(String content){try{FileOutputStream fileOutputStream = openFileOutput("super.txt", MODE_PRIVATE);fileOutputStream.write(content.getBytes());fileOutputStream.close();}catch(){}catch(){}
}

ContentProvider

<providerandroid:name=""android:authorities=""/>
public class MyContentProvider extends ContentProvider{public int delete(Uri uri,String selection, String[] selectionArgs){}
}

Uri 通用资源标志符

Broadcast广播

BroadcastReceiver 广播接收器

使用:需要Intent对象,sendBroadcast(),sendOrderBroadcast(),sendStickyBroadcast()。

Service

注册:

<service android:name=""/>
public void onClick(View v){switch(v.getId()){case R.id.:Intent intent = new Intent(MainActivity.this, MyService.class);startService(intent);break;}
}
public class MyService extends Service{public void onCreate(){super.onCreate();}public int onStartCommand(Intent intent,int flags,int startId){return super.onStartCommand(intent,flags,startId);}public void onDestroy(){super.onDestroy();}public IBinder onBind(Intent intent){return null;}
}

Bind

public void onCreate(){}
public IBinder onBind(Intent intent){}
public void unbindService(ServiceConnection conn){}
ServiceConnection conn = new ServiceConnection(){public void onServiceDisconnected(ComponentName name){}public void onServiceConnected(ComponentName name, IBinder binder){}
}

系统服务

MountService,ClipboardService,getSystemService().

public Object getSystemService(String name){}

POWER_SERVICE,PowerManger电源服务
ALARM_SERVICE,AlarmManager闹钟服务

LayoutInflater inflater = MainActivity.this.getSystemService(LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout. , null);
setContentView(view);

getSystemService

GestureDetector

MotionEvent,GestureDetector,onGestureListener.

GestureOverlayView

Android:eventsInterceptionEnabled
Android:fadeDuration
Android:fadeEnabled
Android:gestureColor
<android.gesture.GestureOverlayView android:id=""android:layout_width=""android:layout_height=""><ImageViewandroid:id=""android:layout_width=""android:layout_height=""
</android.gesture.GestureOverlayView>

定位:分享 Android&Java 知识点
完结!

Android开发工程师文集-提示框,菜单,数据存储,组件篇相关推荐

  1. Android开发工程师文集-layout_weight讲解

    前言 大家好,我是 Vic,今天给大家带来Android开发工程师文集-layout_weight讲解的概述,希望你们喜欢 Layout_weight的相关代码展示 <TextViewandro ...

  2. Android开发(二十四)——数据存储SharePreference、SQLite、File、ContentProvider

    Android提供以下四种存储方式: SharePreference SQLiteFile ContentProvider Android系统中数据基本都是私有的,一般存放在"data/da ...

  3. android 广播 关闭对话框,Android 对话框、信息提示和菜单

    Android 对话框.信息提示和菜单 对话框 标准对话框显示按钮的方法 标准对话框最多 3 个按钮.具体可查看 AlertDialog 源码. 响应标准对话框的按钮单击事件 使用 DialogInt ...

  4. 2012年全国最新Android开发工程师薪资水平调查分析

    为什么80%的码农都做不了架构师?>>>    2012年全国最新Android开发工程师薪资水平调查分析 最近几年,随着Android的飞速发展,伴随着巨大的产业需求,国内Andr ...

  5. android用户界面组件都是放置在,Android开发工程师第十章 节 用户界面高级组件.ppt...

    Android开发工程师第十章 节 用户界面高级组件.ppt 电子相册的设计与实现 4.图片放大与缩小显示的实现 在触摸ImageSwitcher中显示的图片后,全屏显示该图片,要全屏显示该图片,只要 ...

  6. 关于Android开发工程师的从业预期与自我要求

    现在对于Android开发有一定的兴趣和想法,在可预见的未来几年内应该会努力向这一方面发展,所以这几天在招聘网站上查阅了一下Android开发工程师相关的任职要求和职位描述,并自己进行了相关的整理,也 ...

  7. Android开发工程师 技能要求

    职位类别:Android开发工程师 岗位职责: 负责android系统平台上的客户端软件的产品开发与维护. 任职要求: (1)具有至少两款android应用的设计和开发经验,能够独立设计和开发,作品能 ...

  8. Android开发工程师个人简历

    基 本 资 料 姓名:yjbys 性别:男 学历:本科 身高:170 CM 籍贯:湖北 出生年月:1991-03-07 目前所在地:武汉 毕业院校:武汉科技大学 主修专业:软件工程 技能专长:andr ...

  9. android应用程序判断题,Android开发工程师笔试判断题

    Android开发工程师笔试判断题20例 1.一个Activity就是一个可视化的界面或者看成是控件的容器.√ 2.Intent有很长的生命周期,是没有用户界面的程序,可以保持应用在后台运行,而不会因 ...

  10. 天津android工程师,天津Android开发工程师工资待遇如何?月薪多少?

    天津Android开发工程师工资待遇如何?月薪多少? 时间:2017-04-25     来源:android开发工程师培训 天津Android工程师工资待遇怎么样?天津安卓工程师月薪多少呢?相信这是 ...

最新文章

  1. SpringBoot与Shiro整合-概述
  2. C语言字符串左右排序交换
  3. oracle的命名规则
  4. 面向对象特征:封装、多态 以及 @propetry装饰器
  5. RocketMQ单机版本安装(windows环境)
  6. Fantageek翻译系列之《使用Autolayout显示变化高度的UITableViewCell》
  7. qt代码中判断windows/linux/arm等系统
  8. Windows 系统下安装anaconda教程 ,小白教程!!!
  9. 实战自制Linux操作系统
  10. 【ACL2020论文尝鲜】如何以低成本的数据构建高效NER模型?
  11. java 链表_java数据结构与算法之顺序表与链表深入分析(一)
  12. 浅谈AQS锁实现机制(含ReentrantReadWriteLock读写锁加锁解锁相关源码分析)
  13. 几种简易APP制作方式!自留!
  14. 必备!Mac上的硬盘测速专家Blackmagic Disk Speed Test
  15. spark推测执行 优点 缺点
  16. safari浏览器找不到服务器怎么办,safari打不开网页因为服务器已停止响应解决方法...
  17. redirect_uri 参数错误 公众号H5授权登录原理
  18. 屏幕校色icc文件的必要标签
  19. html datatable修改行,DataTable根据条件修改行颜色和特定格颜色
  20. 业余时间决定了你的人生

热门文章

  1. Python获取当前时间
  2. 考研复试数据库原理课后习题(一)——绪论
  3. hdu1013 (Digital Roots)
  4. 加点字符就能让qq昵称很酷的神奇代码?
  5. CRM客户管理系统源码PHP开发搭建
  6. FatFs 之三 FAT文件系统基础、FAT 数据格式、引导、编码
  7. 无法删除文件,无法读源文件或磁盘
  8. 126邮箱手机登录服务器密码怎么办,魅族手机登录网易126邮箱提示账号密码或协议设置不正确解决办法...
  9. 电脑键盘注册表已损坏导致无法输入信息的修复方式
  10. 攻防世界--logmein