Android开发工程师文集-提示框,菜单,数据存储,组件篇
提示框,菜单,数据存储,组件篇
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);
数据存储方式
四种:
- SharedPreferences
- SQLite
- Content Provider
- File
SharedPreferences是一种比较轻型的数据存储,基于xml的键值对存储,存储一些简单的信息。
SharedPreferences只能获取数据不能存储和修改,但能通过Editor实现存储修改。
步骤:
- 获取SharedPreferences对象
- SharedPreferences.Editor
- Editor的putXXX的方法
- 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。
- SQLiteDatabase
- 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开发工程师文集-提示框,菜单,数据存储,组件篇相关推荐
- Android开发工程师文集-layout_weight讲解
前言 大家好,我是 Vic,今天给大家带来Android开发工程师文集-layout_weight讲解的概述,希望你们喜欢 Layout_weight的相关代码展示 <TextViewandro ...
- Android开发(二十四)——数据存储SharePreference、SQLite、File、ContentProvider
Android提供以下四种存储方式: SharePreference SQLiteFile ContentProvider Android系统中数据基本都是私有的,一般存放在"data/da ...
- android 广播 关闭对话框,Android 对话框、信息提示和菜单
Android 对话框.信息提示和菜单 对话框 标准对话框显示按钮的方法 标准对话框最多 3 个按钮.具体可查看 AlertDialog 源码. 响应标准对话框的按钮单击事件 使用 DialogInt ...
- 2012年全国最新Android开发工程师薪资水平调查分析
为什么80%的码农都做不了架构师?>>> 2012年全国最新Android开发工程师薪资水平调查分析 最近几年,随着Android的飞速发展,伴随着巨大的产业需求,国内Andr ...
- android用户界面组件都是放置在,Android开发工程师第十章 节 用户界面高级组件.ppt...
Android开发工程师第十章 节 用户界面高级组件.ppt 电子相册的设计与实现 4.图片放大与缩小显示的实现 在触摸ImageSwitcher中显示的图片后,全屏显示该图片,要全屏显示该图片,只要 ...
- 关于Android开发工程师的从业预期与自我要求
现在对于Android开发有一定的兴趣和想法,在可预见的未来几年内应该会努力向这一方面发展,所以这几天在招聘网站上查阅了一下Android开发工程师相关的任职要求和职位描述,并自己进行了相关的整理,也 ...
- Android开发工程师 技能要求
职位类别:Android开发工程师 岗位职责: 负责android系统平台上的客户端软件的产品开发与维护. 任职要求: (1)具有至少两款android应用的设计和开发经验,能够独立设计和开发,作品能 ...
- Android开发工程师个人简历
基 本 资 料 姓名:yjbys 性别:男 学历:本科 身高:170 CM 籍贯:湖北 出生年月:1991-03-07 目前所在地:武汉 毕业院校:武汉科技大学 主修专业:软件工程 技能专长:andr ...
- android应用程序判断题,Android开发工程师笔试判断题
Android开发工程师笔试判断题20例 1.一个Activity就是一个可视化的界面或者看成是控件的容器.√ 2.Intent有很长的生命周期,是没有用户界面的程序,可以保持应用在后台运行,而不会因 ...
- 天津android工程师,天津Android开发工程师工资待遇如何?月薪多少?
天津Android开发工程师工资待遇如何?月薪多少? 时间:2017-04-25 来源:android开发工程师培训 天津Android工程师工资待遇怎么样?天津安卓工程师月薪多少呢?相信这是 ...
最新文章
- SpringBoot与Shiro整合-概述
- C语言字符串左右排序交换
- oracle的命名规则
- 面向对象特征:封装、多态 以及 @propetry装饰器
- RocketMQ单机版本安装(windows环境)
- Fantageek翻译系列之《使用Autolayout显示变化高度的UITableViewCell》
- qt代码中判断windows/linux/arm等系统
- Windows 系统下安装anaconda教程 ,小白教程!!!
- 实战自制Linux操作系统
- 【ACL2020论文尝鲜】如何以低成本的数据构建高效NER模型?
- java 链表_java数据结构与算法之顺序表与链表深入分析(一)
- 浅谈AQS锁实现机制(含ReentrantReadWriteLock读写锁加锁解锁相关源码分析)
- 几种简易APP制作方式!自留!
- 必备!Mac上的硬盘测速专家Blackmagic Disk Speed Test
- spark推测执行 优点 缺点
- safari浏览器找不到服务器怎么办,safari打不开网页因为服务器已停止响应解决方法...
- redirect_uri 参数错误 公众号H5授权登录原理
- 屏幕校色icc文件的必要标签
- html datatable修改行,DataTable根据条件修改行颜色和特定格颜色
- 业余时间决定了你的人生