Android
why陈默破晓
这个作者很懒,什么都没留下…
展开
-
常用移动操作系统介绍
操作系统的名称使用的编程语言是否开源Android应用开发的是Java,更底层的是C,C++开源IOSObject-C不开源SymbianC++曾经开源过一段时间,现在不开源Window MobileC#不开源Black BerryJava不开源...原创 2018-05-28 11:01:55 · 5264 阅读 · 0 评论 -
让输入框编程密码框
1、android:password="true"2、android:inputType="textPassword":输入其中的密码可以使任意文本3、android:inputType="numberPassword":只能输入数字密码,其他文本不能输入原创 2018-05-30 11:36:38 · 468 阅读 · 0 评论 -
Fragment的生命周期函数和编写一个简单的fragment的步骤
一、Fragment的完整生命周期函数: Fragment的生命周期函数总共有11个,如下: onAttach()==>onCreate()==>onCreateView()==>onActivityCreate()==>onStart()==>onResume()==>onPause()==>onStop()==&g...原创 2018-06-13 17:44:10 · 650 阅读 · 0 评论 -
动态添加,修改和删除Fragment
//声明碎片管理器对象 private FragmentManager fragmentManager ;//得到碎片管理器对象 fragmentManager =this.getFragmentManager ();1、添加(同一个Activity只能添加一个引用地址相同的Fragment,如果多次添加则会报错:java.lang.IllegalStateException: Fra...原创 2018-06-13 18:06:46 · 2540 阅读 · 0 评论 -
选项菜单的方法、属性、Java代码生成
选项菜单:在用户按手机上的Menu键时弹出的菜单; 1、常用方法:onCreateOptionsMenu(Menu menu):初始化菜单项时自动调用的方法; onOptionsItemSelected(MenuItem item):当用户处理菜单项时自动调用的方法; onPrepareOptionsMenu(Menu menu):每次展开菜单项时自动代用的方法,可以修改某些菜单的可...原创 2018-06-07 10:58:08 · 1144 阅读 · 0 评论 -
意图的分类及其应用场景
1、意图的分类: 显式意图:指定了目标组件名的意图对象; 隐式意图:没有指定目标组件名的意图对象,他通过意图过滤器中的action,category,data进行匹配找到要启动的目标组件;2、显式意图意图和隐式意图的使用场景: 显式意图:一般都是用在一个应用程序中; 隐式意图:可以应用在同一个应用程序中,也可以用在不同的应用程序中,由于隐式意图需要通过意图过滤器中actio...原创 2018-06-07 11:30:25 · 3429 阅读 · 0 评论 -
万能的接口回调步骤
假设目前有一个LefFragment和一个RightFragment,现要将LeftFragment里的值传到RightFragment中,步骤如下:1、自定义一个传值接口(可以在LefFragment中) interface PassValue{ void setName(String name); }2、声明传值接口类型的对象(在LefFragment中) pr...原创 2018-06-14 10:41:53 · 730 阅读 · 1 评论 -
Fragment传值到Actvity,Activity传值到Fragment的操作步骤
一、Fragment传值到Actvity: activity_main.xml中: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_...原创 2018-06-14 11:18:22 · 443 阅读 · 0 评论 -
Fragment传值到Fragment的操作步骤
avtivity_main.xml中:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_h...原创 2018-06-14 11:35:19 · 2216 阅读 · 0 评论 -
上下文菜单
一:什么是上下文菜单:用户长安指定的view超过2秒后自动弹出的菜单;二:编写上下文菜单的步骤: 1、将上下文菜单注册到指定的view对象上 this.registerForContextMenu(view); 2、重写Activity的onCreateContextMenu(ContextMenu menu,View view,ContextMenu.ContextMe...原创 2018-06-08 11:23:25 · 3188 阅读 · 0 评论 -
弹出菜单
一、什么是弹出菜单:当用户点击指定的view对象时弹出的菜单二、弹出菜单的使用步骤: 1、实例化弹出菜单对象并指定菜单依附的view对象: PopupMenu popupMenu=new PopupMenu(this,view); 2、根据弹出菜单对象得到菜单对象: Menu menu=popupMenu.getMenu(); 3、根据...原创 2018-06-08 11:33:30 · 481 阅读 · 0 评论 -
菜单中的复制和粘贴操作
Private ClipboarManaget clipboarManaget ;Private ClipData clipData;1、复制操作: clipData=ClipData.newPlainText("text",name); clipboarManaget .setPrimaryClip(clipData);2、粘贴操作: clipData=clipboar...原创 2018-06-08 11:40:20 · 751 阅读 · 0 评论 -
面试题:Android数据存储分类
1、SharedPreferences:存储私有的数据,以键值对的形式存储;2、Internal Storage(内部存储):在设备的内存中存储私有数据;3、External Storage(外部存储):在外部设备(手机的SDCard等)存储共享数据;4、SQLite Databases(数据库存储):存储结构化数据;5、Network Connection(网络存储):将Android手机端的数...原创 2018-06-15 11:18:46 · 425 阅读 · 0 评论 -
使用SharedPreferences读写数据的步骤
一、写入数据: 1、调用Context对象的getSharedPreferences(文件名,文件的操作模式)得到SharedPreferences对象 this.sharedPreferences=this.getSharedPreferences(fileName, Context.MODE_PRIVATE); 2、调用SharedPreferences对象的...原创 2018-06-15 11:23:04 · 5699 阅读 · 0 评论 -
LinearLayout布局
线性布局其中的控件是按照横向或纵向方式排列的,并且线性布局不会换行,当控件超出窗口,则超出的部分不会显示,会被隐藏。其默认方向是水平方向。1、android:orientation="horizontal":水平方向(一列只能放一个控件),是默认值;2、android:orientation="vertical":垂直方向(一行只能放一个控件);3、android:layout_width="ma...原创 2018-05-30 11:34:27 · 3500 阅读 · 0 评论 -
自定义适配器需要继承哪个类重写哪些方法及这些方法的作用
自定义一个适配器需要继承BaseAdapter类;重写的方法有: getCount():返回适配器对象关联的数据源中元素的个数; getItem():根据指定的position返回索引位的数据对象; getItemId():根据指定的索引位返回指定条目对应的行号; getView(int position, View convertView,...原创 2018-06-05 15:59:00 · 4749 阅读 · 0 评论 -
Android中进程的生命周期
按照他们在手机上的重要程度分为5类: 1、前台进程(ForeGround Process):正在进行着和用户交互的程序的进程; 当进程中有一个Activity正好执行完毕了onResume()方法,这个进程就是前台进程; 当一个服务绑定了前台进程,这个服务就提升为前台进程; 当服务执行了startFor...原创 2018-05-28 11:25:51 · 307 阅读 · 0 评论 -
UI线程模型的两条规则及解决两条规则之间的矛盾
UI线程模型的两条规则:1、不要阻塞UI线程,否则超过5秒出现ANR(Application Not Responding)应用程序无法响应的错误危险;2、不要在非UI线程中更新UI,否则直接报错;解决两条规则之间的矛盾:1、把主线程请到子线程的家里来:Activity.runOnUiThread(Runnable); ...原创 2018-06-11 14:36:54 · 135 阅读 · 0 评论 -
Activity的启动模式及其特点
1、standard(标准模式):是Activity的默认模式;每一次使用startActivity()启动Activity时都会实例化一个新的Activity对象并放入回退栈中;2、singleTop:在启动新的Activity时,会判断栈顶的Activity和将要启动的Activity是否一致,如果不一致,则实例化一个新的Activity对象放入回退栈中,如果一致,则不会实例化新的Activi...原创 2018-05-28 15:25:15 · 1048 阅读 · 0 评论 -
Caused by: android.view.WindowManager$BadTokenException
如果在实例化对话框内部的构建器对象时传递的上下文对象是:getApplicationContext(),则会报异常如下异常:Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application因为对话框是属于Activity的一部分,...原创 2018-06-11 11:38:31 · 511 阅读 · 0 评论 -
AlertDialog对话框
一、创建对话框的主要步骤: 获得AlertDialog静态内部类Builder对象,创建对话框 AlertDialog.Builder builder=new AlertDialog.Builder(); 通过Builder对象设置对话框样式及其将要相应的事件 调用Builder的create()方法创建对话框 ...原创 2018-06-11 11:38:50 · 184 阅读 · 0 评论 -
隐式意图的匹配规则
1、一个意图过滤器(intent-filter)至少包含一个action,否则他将阻塞所有意图匹配成功;2、一个意图(intent)中至少包含一个action,否则永远都不会匹配成功;3、当采用隐式意图使用startActivity(intent)方法激活组件时,由于方法startActivity(intent)内部会自动作如下操作:intent.addCategory("android.inte...原创 2018-06-11 14:33:03 · 608 阅读 · 0 评论 -
自定义异步任务类的步骤
一、编写一个类继承AsyncTask<String,Interger,String>并重写它的抽象方法: doInBackground(String... params),//运行在主线程中 根据需要还会重写其他几个方法: onPreExecute();//运行在主线程中 onProgressUpdate(Integer... v...原创 2018-06-11 14:56:51 · 275 阅读 · 0 评论 -
适配器对象更新界面的方法
adapter.notifyDataSetChanged();运行在主线程中原创 2018-06-11 14:59:30 · 466 阅读 · 0 评论 -
市面上常用的解析XML技术有哪些
DOM,JDOM,DOM4J,SAX,PULL(PULL是Android自带解析XML的技术)原创 2018-06-05 11:24:15 · 496 阅读 · 0 评论 -
如何得到用户点中项的内容
1、根据数据源获取内容: String content=data.get(position);2、根据适配器对象获取内容: String content=adapter.getItem(position);3、根据适配器控件获取数据: String content=parent.getItemAtPosition(position).toString();4、根据用户点击的条目获...原创 2018-06-05 11:34:14 · 131 阅读 · 0 评论 -
让对话框关闭或不关闭的代码
/***让当前对话框关闭*/private void closeDialog(DialogInterface dialig){ //通过反射机制得到当前AlertDialog的类模板对象 Class clz_alertDialog=dialog.getClass(); //再次通过反射机制得到当前对象的父类模板对象 Class clz_dialog=clz_alertDialog.getS...原创 2018-06-12 11:25:35 · 2573 阅读 · 0 评论 -
通知(Notification)的使用
使用通知的步骤: private NotificationManager notificationManager; //使用系统服务得到通知管理器对象 this.notificationManager= (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE); ...原创 2018-06-12 11:28:24 · 1467 阅读 · 0 评论 -
意图和延迟意图的区别
1、意图对象一旦发送出去会马上激活目标组件,而延迟意图必须在用户出发某个事件或系统发生某个事件后才会激活目标组件;2、延迟意图必须和意图对象相关联,否则无法指定要激活的目标组件;3、延迟意图可以激活Activity,BroadCastReceiver,Service这三大组件。...原创 2018-06-12 11:33:21 · 422 阅读 · 0 评论 -
Internal Storage内部存储的读写步骤
一、写入步骤: 1、调用上下文对象的openFileOutput(文件名,文件的操作模式)返回文件输出流对象 fileOutputStream=this.context.openFileOutput("why.txt",Context.MODE_PRIVATE); 2、代用文件输出流对象的write(byte[] data) 将指定的数据写出到内部存储中 f...原创 2018-06-15 11:34:39 · 4778 阅读 · 0 评论