- 博客(114)
- 资源 (19)
- 收藏
- 关注
原创 android6.0+动态权限申请demo
Android中所有的危险权限,一共有9组24个权限。使用这些权限时,必须要进行申请。在android6.0以前可以直接修改AndroidManifest.xml文件,在其中静态生命权限。但是android6.0以后,为保障用户的安全和隐私,android要求开发者动态申请权限。下面给出危险权限表,用作以后参考:下面开始展示如何进行动态权限申请,以获得打电话权限为例:第一步,...
2020-04-24 19:15:30
651
原创 使用LitePal操作SQLite数据库(增删查改)
二话不说,先吹一波LitePal。LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)模式,并将我们平时开发常用的一些数据库功能进行封装,使得不用编写一行SQL语句就可以 完成各种建表和增删查改操作。我们使用的编译语言是面向对象语言,而使用的数据库则是关系数据库,那么面向对象的语言和面向关系的数据库之间建立一种映射关系,它使得我们用面向对象的思维来操作数据库,...
2020-04-24 11:57:53
1914
原创 adb查看android虚拟机的数据库
adb是Android SDK中自带的一个调试工具,使用这个工具可以直接对连接在电脑上的手机或者模拟器进行调试操作。它存放在sdk里的platform-tools目录下,如果想在命令行中使用这个工具,需要先把它的路径配置到环境中。 首先我么先找到自己sdk的目录,点击File->Settings。在上面直接搜sdk,就能找到如下图,箭头所指即为sdk路径,platform-...
2020-04-24 10:55:24
1967
原创 SharedPreferences存储/读取数据
SharedPreferences是通过键值对的方式来存储数据的。要想使用SharedPreferences来存储或者读取数据,首先要获得SharedPreferences对象。Android主要提供了3种方法用于得到SharedPreferences对象: 1.Context类中的getSharedPreferences()方法 此方法接受两个参数,第一个是指定Sha...
2020-04-23 10:10:10
3533
原创 Android写入/读出文件demo
demo之前先做一下说明: Context类中提供的openFileOutput()方法,可以讲述数据存储到指定文件中。该方法共接收两个参数,第一个为文件名,注意这里指定的文件名不可以包含路径,因为所有的文件都是默认存储到/data/data/<packagename>/files/目录下的。第二个参数时文件的操作模式,主要有两个模式。第一个模式为MODE_PRIVA...
2020-04-22 18:39:41
514
原创 监听网络变化(android动态注册广播接收器)
动态注册的广播可以自由的控制注册与注销,在activity中定义内部类还可以实现更改ui。但是必须在启动程序之后才能接收到广播。如果要想实现在程序未启动的情况下就能接收广播,需要使用静态注册。 第一步,新建一个BroadcastTest项目,然后修改MainActivity中的代码:public class MainActivity extends AppCompatAct...
2020-04-22 11:41:04
1733
原创 标准广播与有序广播
标准广播:一种完全异步执行的广播,在广播发出去之后,所有的接收器几乎都会在同一时刻接受到这条广播消息,因此它们之间没有任何顺序可言。优点:效率高。缺点:无法截断。 有序广播:一种同步执行的广播,在广播发出之后,同一时刻只有会有一个广播接收器能够接受到这条消息广播,当这个广播接收器中的逻辑执行完毕后,广播才会继续传递。优点,可以截断。缺点:效率低。 标准广播的使用:...
2020-04-22 10:42:28
1167
原创 实现app开机自启(android静态注册广播接收器)
动态注册的广播可以自由的控制注册与注销,在activity中定义内部类还可以实现更改ui。但是必须在启动程序之后才能接收到广播。如果要想实现在程序未启动的情况下就能接收广播,需要使用静态注册。 首先,我们先创建一个广播接收器。右击mainActivity所在的文件夹->New->Other->Broadcast Receiver。会出现一个创建界面。我们将文件命...
2020-04-22 10:12:11
1819
1
原创 Android添加静态/动态碎片
碎片(Fragment)是一种可以嵌入到活动中的UI片段,它能让程序更加合理和充分地利用屏幕的空间,因而在平板上的应用的非常广泛。和活动有许多地方相像,同样可以包含布局,同样有自己的生命周期。(个人学习尚浅,未发现碎片优势,碎片嵌套的效果活动嵌套都可实现,活动嵌套请参考”活动嵌套“)。下面用一个项目描述碎片的动态及静态添加。1.创建左侧碎片布局left_fragment.xml,该布局用...
2020-04-18 22:01:14
493
1
原创 RecyclerView控件讲解(实现纵向/横向滚动以及瀑布流布局)
与ListView对比优势: 1.运行效率更高。 2.能实现横向滚动与瀑布流布局。 官方更加推荐Recycler控件,但因为后期加入又要使所有版本的Android都能使用,所以把它放入了support库当中,所以使用的第一步,是在项目的build.gradle中添加相应的依赖库。打开app/build.gradle文件,在dependencies中添加implement...
2020-02-18 12:25:50
1331
原创 创建控件与引入布局/控件
对于创建控件,我们举一个创建标题栏的例子。首先创建一个标题栏布局title.xml,代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width=...
2020-02-14 11:18:41
233
原创 Intent返回数据给上一活动
创建两个活动,第一个活动名为FirstActivity,第二个活动为SecondActivity,在两个活动的View界面创建按钮,第一个活动按钮id为button_1,第二个活动按钮id为button_2。FirstActivity中代码如下:public class FirstActivity extends AppCompatActivity { @Override ...
2020-01-31 18:11:38
289
原创 Intent传递数据给下一活动
Intent中提供了一系列putExtra()方法的重载,可以把我们想传递的数据暂存在Intent中,启动另一个活动后,只需要把这些数据再从Intent中取出即可。方法如下:创建两个活动,第一个活动名为FirstActivity,第二个活动为SecondActivity,在第一个活动的View界面创建按钮,id为button_1。在FirstActivity编写如下代码:Button b...
2020-01-31 17:59:24
254
原创 ImageView读取手机图片
picture = (ImageView)findViewById(R.id.picture);//设置imageView的图片监听器picture.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { selectPic(); ...
2020-01-15 22:05:53
643
原创 Android从服务器下载文件并存储
public void Download(final String path){ //将用户信息传入服务器 new Thread(){ @Override public void run() { super.run(); try { ...
2020-01-01 17:42:08
1189
原创 Android无法在SD卡写入文件(Android6.0+需要动态申请)
没错就是这么坑,也不报错花了一下午。1.AndroidMainfest.xml<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.READ_EXTERNAL_STORAG...
2020-01-01 17:36:50
951
原创 Android如何把一个活动设置成主活动
在AndroidManifest.xml中找到需要设置的Activity。在该<activity></activity>中插入<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android...
2019-12-29 17:34:18
2672
原创 HTTP数据传输中GET与POST区别
Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求Get类似数据库查询功能一样,数据不会被修改Get请求的参数会跟在url后进行传递,请求的数据会附在URL之后,以?分割URL和传输数据,参数之间以&相连,%XX中的XX为该符号以16进制表示的ASCII,如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE6...
2019-12-27 16:31:14
374
原创 Android通过HttpURLConnection连接服务器并进行数据传输
demo包含GET及POST数据传输方法,将数据以键值对的形式存储到JSONobject里面,与服务器进行数据交互。1.申请网络权限,在AndroidManifest.xml加入<uses-permission android:name="android.permission.INTERNET"/>2.编写服务器连接与交互代码public class MainAct...
2019-12-27 15:33:43
1069
原创 Menu控件(Android设置选项菜单和快捷菜单)
首先区分一下什么是选项菜单,什么是快捷菜单。选项菜单是针对整个页面布局的,在这个页面布局的右上方,点击之后可以会展开选项,供大家选择。快捷菜单正如其名,十分方便,因为他可以依赖于任何控件,定义之后只需要长摁此控件,菜单列表就会出现,如右:定义选项菜单和快捷菜单都是有两种方法,一种是直接在activity文件中代码书写,这种方法相对比较繁琐,但是灵活性更高。还有一种是通过菜单布局文件直接...
2018-11-23 17:45:19
6297
原创 Android布局控件(包含线性布局,框架布局,表格布局,相对布局,约束布局)
Android提供了许多布局空间,对于不同的格式需求选择不同的布局控件,可以大大简化代码操作。下面为大家介绍一下以下经常用到的五种布局。对了,补充一下,往常Android只有约束布局可以直接在Design页面拖动,现在都可以了。不过不推荐。1.linear_layout(线性布局)线性布局正如其名,他是呈线性分布的布局。只能控制水平或者垂直方向排布控件。可以用于设置登陆界面等简单排布的...
2018-11-21 21:03:34
2562
原创 AlertDialog控件的使用(android设置系统自带或自定义的提示框)
AlertDialog是设置提示框的控件,一般都是简单的提示您是否要xxxx,下面一个确定,或者取消。下面我们介绍一些系统提供的比较复杂的提示方法。还有如何自定义设置提示内容。1.一般的提示里面只需要自己设置提示标题,提示内容,还有点击确定时执行什么操作,点击取消时执行什么操作。很基础的应用,下面给大家演示一个是否要退出程序。//一般提示 Button btn1=(B...
2018-11-19 13:57:15
1039
原创 jsp中对MySql的增删查改操作
1.配置数据源与数据池在Web应用程序中建立一个META-INF目录,在其中建立一个context.xml文件。<?xml version="1.0" encoding="utf-8"?><Context reloadable = "true"><Resource name="jdbc/sampleDS"
2018-11-17 15:25:32
1501
原创 在jsp中读取txt文本
File file = new File(DataInputServlet.class.getClassLoader().getResource("相对路径").getPath()); //获取文件的绝对路径FileReader fr = new FileReader(file); //字符输入流(file要求是绝对路径)BufferedReader br = new Buff...
2018-11-17 10:59:09
3571
原创 如何为TextView添加边框
首先大家需要知道一个概念:android:background的值是一个xml文件。这就意味着如果我们想要一个框,就要定义一个xml布局文件,然后把布局文件的内容赋给TextView的background属性。操作步骤如下:第一步:定义xml文件,命名为setbar_bg.xml,并写入如下代码:<?xml version="1.0" encoding="UTF-8"?>...
2018-11-13 20:22:36
2064
原创 ImageView控件(Android调整图片显示格式)
ImageView是一个可以显示任何图片资源的控件,同时可以调整图片的像素,显示的位置,图片的滚动等问题。ImageView有很多常用的属性,下面会一一解释。先看布局文件:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/r...
2018-11-11 22:27:38
5156
原创 AutoTextView控件的使用(Android设置输入提示)
大家在访问浏览器的时候,要搜索的东西只输入一半不到的时候,系统会给很多提示。如下:这个就是靠AutoTextView实现的。它会自动检索你所有的数据中满足条件的并进行提示。具体怎么操作呢?我们举个简单的例子。首先,先简单的创建个垂直线性布局,把AutoTextView放进去。代码如下:<?xml version="1.0" encoding="utf-8"?>&...
2018-11-11 19:51:27
1452
原创 Spinner控件的使用(设置下拉列表)
Spinner是下拉列表控件,如同ListView一样,需要适配器把数据转化成能在界面布局中显示的形式,其实大部分相同。有意思的是他会需要多设置一下,哪一部分呢?Spinner总共分成两部分,一部分是已经显示的部分,还有一部分是下拉列表。两种的显示都可以自定义,下面为大家展示一下代码:第一步:定义带有Spinner控件的布局<?xml version="1.0" encoding=...
2018-11-11 16:08:12
10085
原创 ListView控件的使用(Android设置列表)
要学习ListView,首先应该掌握适配器,那么什么是适配器呢?适配器就是在安卓中,把数据变成符合界面风格的形式,并且通过ListView显示出来。也就是说适配器是数据和界面之间的桥梁。今天我们主要讲三种适配器:1.ArrayAdapter:简单的数据映射,只包含文字数据。2.SimpleAdapter:文字和图片映射,内容相对丰富了一丢丢。3.自定义的Adapter:无所不能...
2018-11-11 14:27:13
6961
原创 DateTime控件的使用(Android设置时间)
首先在xml文件中如何设置文件的显示呢?代码如下://设置年月日<DatePicker android:id="@+id/dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:calendarViewShown="true" //...
2018-11-11 11:19:56
2304
原创 SeekBar控件的使用(Android设置可以拖动的进度条)
SeekBar和ProgressBar同样都是进度条控件,但是SeekBar可以人为拖动改变控件进度。他的布局文件设置和ProgressBar差不多,但是activity操作有所不同。他可以监听开始拖动,拖动时,拖动停止三种状态,可以在这三种情况下设置操作。代码如下:package cn.edu.qtech.csc.lcb.seekbardemo;import android.app.A...
2018-11-07 20:17:54
1320
原创 通过连接池与数据源建立数据库连接
数据源可以获得数据库连接,是DriverManager工具的一个替代,通常数据源是从连接池中获得的连接对象。当程序需要连接对象时从数据池中取出一个,当连接对象用完毕将其放回连接池,从而避免每次都需要申请。 所以抽重点,传统的链接数据库每次访问都需要加载驱动器,然后连接,一大堆代码重复使用,当需要更改的时候,需要一个个更改,而对于数据池的连接方式,需要更改的时候只需要更改数据源文件...
2018-11-04 19:43:10
475
原创 IDEA连接MySQL8及检验是否连接成功
首先应该注意,mysql8需要的jdbc版本是mysql-connector-java-8.0.11,点击下载。较于之前版本的加载驱动器,进行连接的代码是不同的,如下:String url="jdbc:mysql://localhost:3306(数据库地址)/mydata(数据库名)?useUnicode=true&characterEncoding=UTF-8&use...
2018-11-04 13:09:56
8882
原创 VS中验证控件的使用
才疏学浅,暂时先写vs工具中可以直接拖动使用的验证控件;首先点击Ctrl+alt+x打开工具箱,然后选择验证,如下图:vs已经提供了六种验证方法发,我介绍能力范围内的四种:1.CompareValidator比较两个文本框填写的内容,一般用于确认密码之类的操作:把这个控件拖到自己想放到的地方,点击右键,选择属性:然后会出现属性框:需要设置的关键属性如下:...
2018-10-29 20:21:25
5352
原创 Android常用控件总结
点击需要的控件名,会进入到相应的控件页面。1.EditText控件输入文本(输入类型,颜色,长度)2.TextView控件显示文本及格式控制(阴影,滚动,设置边框)3.Button控件按钮以及设置点击监听3.ToggleButton控件开关类型button及设置点击监听4.CheckBox控件复选按钮及设置点击监听5.RadioButton控件单选按...
2018-10-29 15:37:32
1471
原创 ProgressBar控件的使用(Android设置条形,环形进度条)
ProgressBar是进度条,今天学习两种,一种是水平进度条,可以显示进度,一种是环形进度条,不可以显示进度。//设置进度条类型style="?android:attr/progressBarStyleHorizontal" //水平直线进度条//(什么都不写是中等环形进度条)style="?android:attr/progressBarStyleLarge" //大...
2018-10-19 00:24:53
4166
原创 RadioButton控件的使用(Android设置单选按钮)
举个例子,设置男女的RadioButton。<RadioGroup //先设置RadioGroup把一组Radio放在一起 android:id="@+id/sex" android:layout_width="match_parent" android:layout_height="wrap_c...
2018-10-18 23:19:48
1894
原创 CheckBox控件的使用(Android设置复选框)
设置大小位置文本之类的跟EditText,TextView, Button之类的没有什么区别,但是对于点击的监听和button有所不同,代码如下://为第一个复选按钮建立单击事件监听器chk1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ...
2018-10-18 21:01:02
870
原创 选择器(颜色,图片etc...)
举个例子,创建颜色选择器1.创建Drawable resource file文件文件如下:2.写入代码,控制按下的时候显示红色,否则是黑色3.在程序中调用
2018-10-17 21:01:45
215
原创 Button控件检测点击事件的四种方式
Button检测点击共有四种方法(常用第三种)1:外部监听类MainActivity.javaButton btnSecond=(Button)findViewById(R.id.btnSecond);btnSecond.setOnClickListener(new ExternalListenerClass(this));ExternalListenerClass.java...
2018-10-17 19:38:29
3692
android动态权限申请demo
2020-04-24
RecyclerViewTest.rar
2020-02-18
RecyclerViewTest.rar
2020-02-18
RecyclerViewTest.rar
2020-02-18
RecyclerViewTest.rar
2020-02-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人