Android
Fred-XU
https://www.zhihu.com/people/fredric-96
展开
-
greenDao 备注
1、构建文件夹存放自动生成的代码,并在脚本中配置:sourceSets { main { java.srcDirs = ['src/main/java', 'src/main/java-gen'] } }2、工程配置,引入greenDaocompile 'de.greenrobot:greendao:1.3.7'3...原创 2016-04-12 15:08:00 · 228 阅读 · 0 评论 -
Sensor(ACCELEROMETER)
package com.example.sensor01;import java.util.List;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.Sensor...原创 2015-05-27 15:07:00 · 238 阅读 · 0 评论 -
listview(3、动态刷新)
listview的动态刷新主要是调用adapter的notifyDataSetChanged。在下面的例子中除了记录正常的刷新外,还记录一种错误的情况(注释掉的),作为备忘。notifyDataSetChanged除了数据无改变时不起作用,当数据的引用变化时也不起作用。因此在下面那个用数组的例子里,listview不会更新。package com.example.demo_dlv;...原创 2014-10-15 22:46:00 · 91 阅读 · 0 评论 -
Android(shape.xml)
shape用以在android设计中定义几何形状,这样简单的效果就不需要以来背景图片。基本的功能如下:<shape xmlns:android="http://schemas.android.com/apk/res/android" > //背景颜色填充 <solid android:color="#fffff4c4" /> //背景...原创 2014-07-06 14:37:00 · 156 阅读 · 0 评论 -
公共代码参考(Volley)
Volley 是google提供的一个网络库,相对于自己写httpclient确实方便很多,本文参考部分网上例子整理如下,以作备忘:定义一个缓存类:public class BitmapCache implements ImageCache { private LruCache<String, Bitmap> cache; public Bitm...原创 2014-06-29 16:15:00 · 154 阅读 · 0 评论 -
公共代码参考(ConnectivityManager)
package com.fredric.util;import android.content.Context;import android.net.ConnectivityManager;import android.net.NetworkInfo;import android.net.NetworkInfo.State;/*- * 网络工具类 */public clas...原创 2013-04-03 16:46:00 · 313 阅读 · 0 评论 -
公共代码参考(SDCard)
package com.fredric.util;/*- * SD卡操作的工具类封装 */import java.io.File;import android.os.Environment;import android.os.StatFs;public class SDCardUtils { //判断SA卡是否被正常加载 //Environment是andr...原创 2013-04-03 16:44:00 · 253 阅读 · 0 评论 -
公共代码参考(DisplayMetrics)
package com.fredric.util;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.util.DisplayMetrics;import android.view.View;import android.vi...原创 2013-04-03 16:43:00 · 126 阅读 · 0 评论 -
公共代码参考(TypedValue)
package com.fredric.util;import android.content.Context;import android.util.TypedValue;/*- * 像素转换相关 * COMPLEX_UNIT_PX:像素 * COMPLEX_UNIT_DIP:设备独立像素(与硬件设备无关) * COMPLEX_UNIT_PT:标准长度单位1/72英寸 *...原创 2013-04-03 16:42:00 · 505 阅读 · 0 评论 -
公共代码参考(SQLiteOpenHelper)
package com.fredric.util;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.database...原创 2013-04-03 16:41:00 · 260 阅读 · 0 评论 -
公共代码参考(PackageManager)
package com.fredric.util;import android.content.Context;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;import android.content.pm.PackageManager.NameNotFoundExcept...原创 2013-04-03 16:40:00 · 151 阅读 · 0 评论 -
自定义ProcessBar
android与其他GUI应用开发一样,也提供了自定义控件的定制。本文中给出一个自定义processbar的例子,如下:例子中,控件能够定义进度条已实现和未实现的颜色属性,并且用asynctask以每秒一格的速度刷新。1. 在values下增加attr.xml,定义MyProcessBar的属性<?xml version="1.0" encoding="utf-8"?>...原创 2013-03-22 16:59:00 · 409 阅读 · 0 评论 -
ExpandableListView
ExpandableListView的例子1. 定义groupItem和chidrenItem的layout,略;2. 实现继承BaseExpandableListAdapter的类,如下:public class MyExpandableListViewAdapter extends BaseExpandableListAdapter{ private String[] ...原创 2013-03-22 16:08:00 · 97 阅读 · 0 评论 -
listview(2、CursorAdapter)
CursorAdapter 适配器主要用以从数据库读取例子的场景,例子如下:1. 定义一个adapter,继承CursorAdapterpublic class Adapter2 extends CursorAdapter { private int resourceid; private LayoutInflater mInflater = null; pri...原创 2013-03-22 14:19:00 · 106 阅读 · 0 评论 -
listview(1、BaseAdapter)
listview是APP开发中最常用的UI之一,在android中采用适配器的设计模式,关联UI界面及数据。例子如下:1、定义listview中每个list的界面,创建item_list.xml:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.andro...原创 2013-03-22 14:16:00 · 162 阅读 · 0 评论 -
Sensor(ORIENTATION)
package com.example.sensor01;import java.util.List;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.Sensor...原创 2015-05-27 16:02:00 · 235 阅读 · 0 评论 -
Sensor(GYROSCOPE)
package com.example.sensor01;import java.util.List;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.Sensor...原创 2015-05-27 16:30:00 · 784 阅读 · 0 评论 -
eventbus 备注
Event在整个系统中是单例的。EventBus.getDefault().register(this); 注册EventBus.getDefault().unregister(this); 注销处理:public void onEventMainThread(Integer type){ if(type==LOGOUT){ mainFragment.setCurre...原创 2016-04-12 11:44:00 · 182 阅读 · 0 评论 -
Retrofit 备注
1、配置:compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'2、定义服务和返回值public interface LoginService { @POST("/test") Call<Log...原创 2016-04-12 11:36:00 · 203 阅读 · 0 评论 -
RxJava 备注
RxJava是一个采用观察者模式的异步框架,本文给出几个基本的使用例子。1、配置依赖: compile 'io.reactivex:rxjava:1.0.14' compile 'io.reactivex:rxandroid:1.0.1'2、基础(发布、订阅):observable = Observable.create(new Observable.OnSubs...原创 2016-04-12 10:37:00 · 234 阅读 · 0 评论 -
dagger2 备注
dagger 2是android下的IOC框架,类似java服务端的spring,但功能上远没有其强大。个人理解不管是APP还是服务端依赖注入的本质都是一样的,用于解耦某个服务的定义和实现。我自己给出下面这个简单的例子:1、在android studio中增加配置如下:buildscript { repositories { jcenter() } ...原创 2016-04-11 16:59:00 · 202 阅读 · 0 评论 -
Android 知识杂记(MVP模式)
MVP的模式在于将原来activity中业务逻辑的部分剥离出来,代码示例如下:Accountpublic class Account { private String mUsername; private String mPassword; public String getmUsername() { return m...原创 2016-02-26 15:47:00 · 378 阅读 · 0 评论 -
Android知识杂记(四)
1、完整退出activity的设计思路 1.1 封装一个基础activity类 public abstract class RootActivity extends FragmentActivity{ 1.2 定义一个广播监听 private IntentFilter filter = new IntentFilter(FINISH_ACTION); private Broad...原创 2015-12-14 17:42:00 · 238 阅读 · 0 评论 -
android知识杂记(三)
记录项目中的android零碎知识点,用以备忘。1、android 自定义权限 app可以自定义属于自己的权限:<permission android:description="string resource" android:icon="drawable resource" android:label="string resource" android:name="st...原创 2015-07-31 15:56:00 · 253 阅读 · 0 评论 -
android知识杂记(二)
记录项目中的android零碎知识点,用以备忘。AsyncQueryHandler 继承与handler,可以用于处理增删改(ContentProvider提供的数据) 例如:query = new AsyncQueryHandler(getContentResolver()); 包括方法:startQuery、startInsert、startDelete、startUpdat...原创 2015-07-13 17:06:00 · 262 阅读 · 0 评论 -
android知识杂记(一)
记录项目中用的零碎知识点,用以备忘。android:screenOrientation:portrait 限制横屏 activity启动状态 singleTop 只执行一次,通常用在欢迎页面 singleTask 堆栈之上的activity都会被销毁,通常用于首个activity MAIN && LAUNCHE android.intent.action.MAI...原创 2015-07-13 16:57:00 · 189 阅读 · 0 评论 -
DownloadManager
在androi中,volley适合小文件的获取和大并发,如果支持大文件的下载可以用Android原生的DownloadManager。DownloadManager默认支持多线程下载、断点续传等。基础代码如下:public class MainActivity extends Activity { private DownloadManager manager ; ...原创 2015-07-02 15:00:00 · 234 阅读 · 0 评论 -
Android(蓝牙)
因近期项目需求调试了Android蓝牙通讯接口,主要是两个终端作为服务端和客户端的通信,本文将部分重要知识点记录如下。蓝牙是短距离无线通信,通常分经典蓝牙和低功耗蓝牙(即蓝牙4.0),两类蓝牙协议各层定义上存在很多不同,因此芯片也不一样,但就Android上做应用层开发没什么差别。蓝牙通信分为配对和数据传输两部分,两部分是独立的,一般来说是点对点,如果要组局域网需要支持LAN协议扩展,没有...原创 2015-07-01 11:32:00 · 397 阅读 · 0 评论 -
Android下集成Paypal支付
近期项目需要研究paypal支付,官网上的指导写的过于复杂,可能是老外的思维和中国人不一样吧。难得是发现下面这篇文章:http://www.androidhive.info/2015/02/android-integrating-paypal-using-php-mysql-part-1/在这篇文章的基础上,查看SDK简化了代码,给出下面这个例子,测试通过。其实集成paypal还是非常...原创 2015-06-29 20:55:00 · 560 阅读 · 2 评论 -
Sensor(PROXIMITY)
package com.example.sensor01;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.SensorManager;import android....原创 2015-05-27 16:47:00 · 399 阅读 · 0 评论 -
Sensor(LIGHT)
package com.example.sensor01;import java.util.List;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.Sensor...原创 2015-05-27 16:35:00 · 331 阅读 · 0 评论 -
Animation(2、帧动画)
android帧动画相对简单,只是将资源中的图片文件依据一定规则播放,类似GIF文件。首先定义ani.xml,如下:<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:onesho...原创 2013-03-22 11:57:00 · 3791 阅读 · 0 评论 -
Animation(1、Tween Animation)
Android的补间动画,主要例子如下:mImageView = (ImageView)findViewById(R.id.imageView1);//透明度动画AnimationSet animationSet = new AnimationSet(true);//设置透明度AlphaAnimation alphaAnimation = new AlphaAnimation(0,...原创 2013-03-22 11:04:00 · 153 阅读 · 0 评论 -
widget(7、dialog)
dialog是android的对话框控件,包括:警告对话框:AlertDialog 进度对话框:ProgressDialog 日期选择对话框:DatePickerDialog 时间选择对话框:TimePickerDialog 自定义对话框:从Dialog继承通过AlertDialog,我们可以实现普通式、列表式及自定义等。下面给出两个典型例子:普通式:AlertDialog....原创 2013-01-24 10:45:00 · 121 阅读 · 0 评论 -
widget(6、menu)
menu是android菜单栏控件,选择手机menu键时触发,基本函数如下:public boolean onCreateOptionsMenu(Menu menu) { MenuItem item2 = menu.add(Menu.NONE, MENU_ID2, Menu.NONE, "菜单项2"); MenuItem item3 = menu.add(Menu.NONE,...原创 2013-01-24 10:01:00 · 180 阅读 · 0 评论 -
widget(5、DatePicker)
DatePicker 是android下的日期选择器,类似的有TimePicker等。DatePicker 常用定义如下: <DatePicker android:id="@+id/datePicker1" android:layout_width="wrap_content" android:layout_height="wrap...原创 2013-01-24 08:57:00 · 143 阅读 · 0 评论 -
widget(4、spinner)
Spinner 是android下的一个下拉框控件,可以支持多级,通常定义如下:<Spinner android:id="@+id/spinner1" android:layout_width="match_parent" android:layout_height="wrap_content" />Spinner与ListView类似,都是采用...原创 2013-01-23 20:25:00 · 107 阅读 · 0 评论 -
widget(2、EditText)
EditText 是一个文本输入框,主要用到的类型是普通文本输入或密码输入。通常设置如下: <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" ...原创 2013-01-23 20:24:00 · 282 阅读 · 0 评论 -
widget(3、Toast)
Toast是一个提示小组件,最长用方法如下:Toast toast = new Toast(this);toast = Toast.makeText(getApplicationContext(), "提示:输入参数错误", Toast.LENGTH_SHORT); //持续时长 toast.setGravity(Gravity.CENTER, 0, 0);//设置位置Line...原创 2013-01-23 20:24:00 · 119 阅读 · 0 评论 -
widget(1、TextView)
TextView 是android基本的控件,用以显示一个静态文本框。通常定义如下: <TextView android:id="@+id/text_test" android:layout_width="wrap_content" android:layout_height="wrap_content" andr...原创 2013-01-23 20:23:00 · 143 阅读 · 0 评论