自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(18)
  • 收藏
  • 关注

原创 带有progress的圆形button

public class CircleButtonWithProgerss extends View { private RectF mColorWheelRectangle = new RectF(); //圆圈的矩形范围 private Paint mDefaultWheelPaint; // 绘制底部灰色圆圈的画笔 private Paint mColorWhee

2016-03-25 21:04:51 227

原创 设计模式之外观模式

家庭影院的总开关public class HomeTheaterFacade { Amplifier amp; Tuner tuner; CdPlayer player; public HomeTheaterFacade(Amplifier amp, Tuner tuner, CdPlayer player) { this.amp = amp;

2016-03-17 21:54:36 139

原创 设计模式之适配器模式

对象适配器:鸭子public interface Duck { public void quack(); //鸭子会quack叫 public void fly();}public class MallardDuck implements Duck { @Override public void quack() { System.out.pri

2016-03-17 21:45:35 135

原创 设计模式之命令模式

有一个遥控板,上面有不同的按键,需要给每个按键设置不同的功能//命令的接口public interface Command { public void execute(); public void undo();}//被控制的灯public class Light { public void on() { System.out.println("Lig

2016-03-16 22:04:09 101

原创 Android 可滑动删除item的ListView

增加滑动删除按钮的ListViewpublic class MyListView extends ListView implements GestureDetector.OnGestureListener, View.OnTouchListener { private OnDeleteListener listener; private GestureDetector gesture

2016-03-11 15:14:29 167

原创 设计模式之单例模式

public class Singleton { private static Singleton uniqueInstance; private Singleton() {}//只有Singleton类内才能调用 public static Singleton getInstance(){ if(uniqueInstance == null){

2016-03-10 10:34:46 123

原创 设计模式之工厂模式

有很多店卖很多不同种类的pizza,但对制作好的pizza的处理过程相同创造者类创造者通常包含依赖于抽象产品的代码,而这些抽象产品由子类制造,创建者不需要真的知道在制造那种具体产品//抽象创造者类,定义了一个抽象的工厂方法,让子类实现此方法制造产品public abstract class PizzaStore { public Pizza orderPizza(String type

2016-03-09 18:44:11 106

原创 设计模式之装饰者模式

在不同的饮品中加入调料,根据最后加入调料计算最后价格饮品基类public abstract class Beverage { String description = "Unknown Beverage"; // 返回当前饮品的种类 public String getDescription() { return description; } /

2016-03-09 16:51:03 108

原创 设计模式之观察者

public interface Obsever { // 当气象观察值改变时,把这些状态值作为方法的参数,传给观察者 public void update(float temp, float humidity, float pressure);}public interface DisplayElement { // 展示观察者信息 public void di

2016-03-09 16:21:29 125

原创 设计模式之策略模式

设计模式之策略模式public abstract class Duck { // 为行为接口类型申明两个引用变量,所有鸭子子类都继承他们 FlyBehavior flyBehavior; QuackBehavior quackBehavior; public Duck() { } public void performFly() { flyB

2016-03-09 15:34:40 142

原创 使用Android MediaStore裁剪图片时,出现android 裁剪无法加载,以及jpeg EXIF metadata from picture callback的解决办法

当使用ACTION_GET_CONTENT这个action来访问相册时,原本uri返回的是file:///…,但是android4.4以上返回的是content:///,这就导致无法获取到正常应该裁剪的图片。但是,如果使用ACTION_PICK,得到的Uri就是正常的,代码如下: // 激活系统图库,选择一张图片 Intent intent = new Intent(Intent.ACT

2016-02-19 10:32:46 201

原创 如何动态改变Edittext中输入文字的效果

在edittext中,有时候需要动态改变文字效果,类似于一个文本编辑器中,你需要设置接下来输入的字符是斜体,加粗,删除线等等,这时候直接对edittext是实例对象进行设置肯定是行不通的,因为这样会使整个的文字效果发生改变。这时候,我们应该新建一个EditChangedListener类来实现的TextWatcher接口中的方法来监听edittext的输入,然后进行动态的文字效果设置。代码如下

2016-02-16 10:25:16 748

原创 HorizontalScrollView滑动位置的监听,及其判断处于顶部和底部

HorizontalScrollView 中判断当前滑动的位置不像listview直接设置监听那么简单,我们可以通过setOnTouchListener 设置监听来通过MotionEvent 判断。如下图mSvTools.setOnTouchListener(new View.OnTouchListener() { @Override publi

2016-02-01 10:48:31 2284

原创 使用popupMenu无法显示icon的问题

在Android官方开发规范中,有:PopupMenu DOES NOT INCLUDE/SHOW ICONS,即:PopupMenu不应该展示图标。但是,我们可以通过setForceShowIcon(true)方法,来强制显示添加的Icon。方法一:继承PopupMenu的类MyPopupMenu:public MyPopupMenu(Context context, View ancho

2016-02-01 08:28:21 1231

原创 The content of the adapter has changed异常

在开发过程中,出现了一个The content of the adapter has changed的异常。当从网络上读取了数据,并且更新了Adapter中的数据,但是,在后台线程中并没有通知ListView对数据进行更新,就会出现了这个异常。在ListView的layoutChildren()方法里有如下一段方法:// Handle the empty set by removing al

2016-01-27 11:37:33 218

原创 Fragment嵌套显示时,ViewPager内容无法刷新的问题

Fragment嵌套显示时,ViewPager内容无法刷新的问题在编写简书的主界面时,需要进行多个Fragment的嵌套,比如第一个“发现”的标签里,有一个主Fragment,期中还分有“文章”和“专题”这两个Fragment,在“文章”中,又分了热门、新上榜等许多小标签,每一个都又是一个Fragment。之前,我在进行Fragment的切换过程中,使用了getSupportFragmentM

2016-01-26 09:39:30 671

转载 Android 关于inflate

通俗的说,inflate就相当于将一个xml中定义的布局找出来.    因为在一个Activity里如果直接用findViewById()的话,对应的是setConentView()的那个layout里的组件.    因此如果你的Activity里如果用到别的layout,比如对话框上的layout,你还要设置对话框上的layout里的组件(像图片ImageView,文字TextV

2015-02-22 10:36:41 219

转载 Android中项目中各个文件夹的含义和用途详解

1.src:存放所有的*.java源程序。2.gen:为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源ID。3.assets:可以存放项目一些较大的资源文件,例如:图片、音乐、字体等。4.res:可以存放项目中所有的资源文件,例如:图片(*.png、*.jpg)、文本等。5.res/drawable-hdpi:保存高分辨率图片资源,可以使用Resource

2015-02-21 16:24:39 459

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除