- 博客(46)
- 收藏
- 关注

原创 升级 Android Studio 3.4 和 gradle 插件 3.4.0 引发的问题
升级 Android Studio 3.4 和 gradle 插件 3.4.0 引发的问题 Android Studio: 3.4 gradle 插件: 3.4.0 gradle: 5.1.1 升级之后编译项目,遇到错误如下:Build project > Build failed:Caused by: com.android.tools.r8.uti...
2019-04-23 17:15:32
4099
原创 Android自定义控件皮肤
Android自定义控件皮肤对于Android的自带控件,其外观只能说中规中矩,而我们平时所看到的Android应用中,一个简单的按钮都做得十分美观,甚至于许多按钮在按下时的外观都有一定变化,用户体验十分好。这其中,就涉及到了Android自定义控件属性的操作方法,以下操作以实现自定义按钮皮肤为例。1. 我们要自定义将要实现的外观状态,可以是图片或者是自定义的xml,这是我们直接自
2014-10-27 12:22:39
1211
原创 Android使用DOM生成和输出XML格式数据
Android使用DOM生成和输出XML格式数据本文主要简单讲解如何使用DOM生成和输出XML数据。1. 生成和输出XML数据代码及注释如下:try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builde
2014-10-23 17:51:41
1256
转载 newinstance()和new有什么区别?
在初始化一个类,生成一个实例的时候;newInstance() 和 new 有什么区别?用newInstance与用new是区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,那么为什么会有两种创建对象方式?这个就要从可伸缩、可扩展,可重用等软件思想上解释了。Java中工厂模式经常使用newInstance来创建对象,因此从为什么要使用工厂模式上也可以找到具体答案。例如:C
2014-10-23 16:26:11
538
原创 Android创建JSON格式数据
Android创建JSON格式数据作为上一篇博客的补充,简单那讲解了一下Android创建JSON格式数据的小Demo。1. 创建JSON格式数据对于Android创建JSON格式数据,由于Android官方提供了相应了put(key, value)等方法,因此代码十分简单,如下所示:JSONObject jsonObject = new JSONObject();J
2014-10-23 14:10:31
1444
原创 Android读取JSON格式数据
操作以读取及解析存放在assets目录下的test.json为例,若是涉及到应用程序本地包内的JSON文件或者是SD卡内的JSON文件,实际上就是多增加了一步通过构造FileInputStream对象打开相应文件的步骤,而在assets目录下的json文件则可以通过Android的官方提供的操作方法getAssets().open("test.json")直接得到一个FileInputStream对象。之后我们再通过构造InputStreamReader得到文件字符流对象,接着通过构造BufferedRe
2014-10-22 17:47:29
4607
原创 jqMobi(App Framework)入门学习(一)
jqMobi(App Framework)入门学习(一)1. 什么是jqMobi?jqMobi是由appMobi针对HTML5浏览器和移动设备开发的javascript框架,是个极其快速的查询选择库,支持W3C查询。jqMobi源码是基于jQuery源码重写的,但是两者又属于不同的产品,jqMobi体积更小,速度更快,兼容性也有所不同。上面这段话来自百度百科,但
2014-10-19 14:22:08
2272
原创 Android读取raw文件夹中的内容
Android读取raw文件夹中的内容raw文件夹是android程序中res目录下自定义存放静态文件的一个目录,和assets一样不会被编译为二进制文件,与assets不同的是,该目录下的文件会被映射到R.java文件中,而且该目录并不支持多级目录。Android官方提供了相应的方法去访问该文件夹中的内容,故此我们并不需要进行相关的路径判断等代码操作,直接调用相关方法打开文件并得到一
2014-10-11 14:49:34
1496
原创 Android读取Assets文件夹中的内容
assets文件夹是android程序中存放相关外部文件的一个目录,Android官方提供了相应的方法去访问该文件夹中的内容,故此我们并不需要进行相关的路径判断等代码操作,直接调用相关方法打开文件并得到一个字节输入流(InputStream);然后通过相应的字符编码方式读取字节解码为字符输入流(InputStreamReader);再通过BufferReader对字符输入流读取文本并将字符存入缓冲区以便能提供字符、数组和线段的高效读取;最后我们就能逐行对文件内容进行读取了。
2014-10-11 14:30:32
1131
原创 Java文件的基本操作
Java文件的基本操作1. 文件的创建public class CreateFile { public static void main(String[] args) { File file = new File("myFile.txt"); if(!file.exists()) { try {
2014-10-11 13:02:07
616
原创 Java文件夹的基本操作
Java文件夹的基本操作1. 文件夹的创建public class CreateFolder { public static void main(String[] args) { File folder = new File("newFolder"); if (!folder.exists()) { folder.mkd
2014-10-11 12:57:42
583
原创 Android资源访问
Android资源访问1. Android获取String.xml文件中的字符串资源:Java业务代码获取方式:String str = getResources().getString(R.string.stringname);(TextView) findViewById(R.id.textView).setText(R.string.stringname);布
2014-10-10 16:50:03
648
原创 Android SurfaceView绘制组合图形
Android SurfaceView绘制组合图形完整代码如下:MyOwnView.javapublic class MyOwnView { private List views = null; private float x = 0, y = 0; public float getX() { return x; }
2014-10-05 12:18:08
764
原创 Android SurfaceView简单使用
Android SurfaceView简单使用1. 首先要新建一个类继承自SurfaceView并重写其构造方法:public class MyView extends SurfaceView { public MyView(Context context) { super(context); paint = new Paint();
2014-10-03 16:35:28
604
原创 Android缩放图片
Android缩放图片主布局文件如下:activity_main.xmlRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/relative
2014-10-02 21:25:03
574
原创 Android ViewPager程序引导页的实现
Android ViewPager程序引导页的实现1. 首先是程序启动的默认欢迎页面(每次启动都会进入该页面)welcome.xmlLinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android
2014-10-01 13:55:17
819
原创 Android四角布局
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"
2014-09-30 22:55:10
815
原创 Android霓虹灯效果
Android霓虹灯效果页面布局文件:activity_main.xmlFrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_
2014-09-30 22:53:27
766
原创 Android简易计算器(破烂Alpha版,后续更新)
Android简易计算器(破烂Alpha版,后续更新)界面布局如下:activity_main.xmlLinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layo
2014-09-30 16:32:02
722
原创 Android后退按钮的事件处理
Android后退按钮的事件处理MainActivity.javapublic class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
2014-09-30 14:34:52
855
原创 Android BaseAdapter基本使用及数据刷新
Android BaseAdapter基本使用及数据刷新1. 首先是Adapter适配器类:MyListAdapter.javapublic abstract class MyListAdapter extends BaseAdapter { private Context context; private int listItemId = 0; p
2014-09-30 11:49:20
4587
1
原创 Android ListView的使用
Android ListView的使用一、AdapterAdapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(List View,Grid View)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:• BaseAdapter是一个抽象类,继承它需要实现较多的方
2014-09-28 15:29:13
449
原创 Android五大布局的使用
Android五大布局的使用程序中设置背景颜色:setBackgroundColor(Color.parseColor("#F5F5DC"));LinearLayout 线性布局android:orientation=” ”,定义布局内组件水平排列或垂直排列android:gravity=” “,定义布局内组件的排列RleativeLayout 相对布局
2014-09-28 13:11:54
494
原创 Android BroadcastReceiver 广播接收者
Android BroadcastReceiver 广播接收者BroadcastReceiver用于接受Broadcast Intent,该Intent的发送是通过调用context.sendBroadcast()、context.sendOrderBroadcast()来实现的。通常一个广播Intent可以被订阅了该Intent的多个BroadcastReceiver所接收。
2014-09-27 21:03:13
572
原创 Android Serivce
Android SerivceSerivce是Android四大组件之一,主要用于后台操作。一、Service的启动和停止(startService、stopService):1.1 先新建Serivce操作类继承自系统的Serivce类,并重写onBind()、onCreate()、onDestroy()方法,如下所示:public class EchoServi
2014-09-27 19:47:56
703
原创 Android 简单视频播放器(破烂版,后续更新)
Android 简单视频播放器(破烂版,后续更新)activity_main.xmlLinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="mat
2014-09-26 18:07:22
768
原创 Android 简单音乐播放器(破烂版,后续更新)
Android 简单音乐播放器(破烂版,后续更新)activity_main.xmlLinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="mat
2014-09-26 15:03:52
760
原创 Android Activity(三)
Android Activity(三)三、Activity的四种启动模式activity android:name=".MainActivity" android:launchMode="standard"/>standard这是默认模式,每次激活Activity都会创建Activity实例,并放入任务栈中。singleTop如果在任务的栈顶正好存在该Activity
2014-09-24 13:45:14
579
原创 Android Activity(二)
Android Activity(二)二、Intent题外话:为什么我会将打电话、发短信、拍照等视作系统功能操作(事实上Android官方也是这么理解的),可能很多人认为在Android操作系统中,这些只是一个个的程序,跟QQ没什么区别。但是这些功能毕竟是从功能机时代开始,作为一部手机所具有的基本功能。举个例子,你的手机里可能没有自带QQ、支付宝等程序,但是绝对自带了拨号程序、
2014-09-23 20:19:06
463
原创 Android Activity(一)
Android Activity(一)一、Activity一个Activity就是一个类,要继承Activity基类(如Activity)或是其子类(如ListActivity);新建Actiivty时要注意复写onCreate()方法(使用Eclipse编写安卓程序时建议直接在新建类的可视化界面选择继承Activity,Eclipse会自动添加上onCreat
2014-09-23 17:19:01
571
原创 Java获取网络图片
Java获取网络图片public class ImageRequest { public static void main(String[] args) throws Exception{ URL url = new URL( "http://a.hiphotos.baidu.com/image/pic/item/b3b7d0a20cf431a
2014-09-21 22:05:35
983
原创 Android从网络中获取图片
Android从网络中获取图片1. 首先要在AndroidManifest.xml文件中添加访问网络的权限:uses-permission android:name="android.permission.INTERNET"/>2. 接着是界面:LinearLayout xmlns:android="http://schemas.android.com/apk/res/a
2014-09-21 21:59:41
513
原创 Android通讯录联系人操作
Android通讯录联系人操作1. 对Android通讯录进行操作,首先需要加入读写联系人信息的权限:uses-permission android:name="android.permission.READ_CONTACTS"/>uses-permission android:name="android.permission.WRITE_CONTACTS"/>2. 读取联
2014-09-21 19:21:08
834
原创 Android Content provider
Android Content provider当应用需要通过Content Provider共享数据时,首先需要继承Content Provider类并重写相应方法。第二步需要在AndroidManifest.xml使用对Content Provider进行配置。1. 新建内容提供类:public class PersonProvider extends Conten
2014-09-20 23:43:33
553
原创 Android SQLite数据显示于ListView
Android SQLite数据显示于ListView1. 新建DBOpenHelper继承自SQLiteOpenHelper类:public class DBOpenHelper extends SQLiteOpenHelper { private final static String DATABASENAME = "itcast.db"; private fin
2014-09-20 14:31:42
1214
原创 Android SQLite事务操作
Android SQLite事务操作1. 新建DBOpenHelper继承自SQLiteOpenHelper类:public class DBOpenHelper extends SQLiteOpenHelper { private final static String DATABASENAME = "itcast.db"; private final static
2014-09-20 12:45:21
565
原创 Android SQLite数据库操作(二)
Android SQLite数据库操作(二)使用系统自带方法进行数据库操作,不大建议使用。1. 新建DBOpenHelper继承自SQLiteOpenHelper类:public class DBOpenHelper extends SQLiteOpenHelper { private final static String DATABASENAME = "m
2014-09-19 18:29:41
518
原创 Android SQLite数据库操作(一)
Android SQLite数据库操作(一)1. 新建DBOpenHelper继承自SQLiteOpenHelper类:public class DBOpenHelper extends SQLiteOpenHelper { private final static String DATABASENAME = "my.db"; private final static
2014-09-19 15:09:46
532
原创 Android使用SharedPreferences进行数据存储
Android使用SharedPreferences进行数据存储SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data//shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实
2014-09-18 23:28:13
600
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人