![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
android practice
0 and 1
To be better
展开
-
Fragment嵌套FragmentViewPager 正常使用姿势
getFragmentManager到的是activity对所包含fragment的Manager,而如果是fragment嵌套fragment,那么就需要利用getChildFragmentManager()了。即:需要管理相互独立的并且隶属于Activity的Fragment使用getFragmentManager(),而在Fragment中动态的添加Fragment要使用getChildFr原创 2018-01-23 11:35:04 · 874 阅读 · 0 评论 -
inflater将一个Layout布局转化为View
将一个Layout布局转化为View有两种方法,其实本质都一样(1)View.inflate(mContext, R.layout.carepeople_item, null);(2)LayoutInflater mInflater; mInflater = LayoutInflater.from(mContext); convertView = mInflater.inflate原创 2016-05-08 12:19:55 · 456 阅读 · 0 评论 -
Bitmap使用
转载请注明出处:先简单了解一下Bitmap位图文件(Bitmap),扩展名可以是.bmp或者.dib。位图是Windows标准格式图形文件,它将图像定义为由点(像素)组成,每个点可以由多种色彩表示,包括2、4、8、16、24和32位色彩。例如,一幅1024×768分辨率的32位真彩图片,其所占存储字节数为:1024×768×32/8=3072KB位图文件图像效果好,但是非压原创 2016-04-26 15:24:32 · 584 阅读 · 0 评论 -
将dp转换为px
/** * 将dp转换为px * * @param context * @param dpValue * @return */ public static int dip2px(Context context, float dpValue) { final float scale = context.getResources().getDisplayMetrics原创 2016-04-16 15:15:34 · 373 阅读 · 0 评论 -
ARGB,RGB颜色值表示
转载请注明出处:今天自定义一个控件,设置背景颜色时犯难了现在就来总结一下android中的颜色值表示android 定义颜色color时6位或8位值的区别6位(#000000)就是RGB值8位(#1e000000)ARGB 头两位是透明度,00是完全透明,ff是完全不透明,后6位是RGB值,比较适中的透明度值是int color = Colo原创 2016-03-08 22:56:54 · 28810 阅读 · 1 评论 -
自定义View继承view
public class CircleProgressView extends View { private int mMeasureHeigth; private int mMeasureWidth; private Paint mCirclePaint; private float mCircleXY; private float mRadius;原创 2016-02-29 21:05:26 · 554 阅读 · 0 评论 -
android 自定义控件继承TextView
在原生控件上进行扩展,增加新的功能一般是在onDraw() 方法中对原生控件进行扩展下面以一个TextView 为例,来看看如何使用扩展原生控件的方法创建新的控件/* * 对现有控件进行扩展 * */public class M_TextView extends TextView{ public M_TextView(Context context, Attribute原创 2016-02-29 20:59:49 · 5850 阅读 · 4 评论 -
页面切换之Fragment
Fragment详细讲解http://blog.csdn.net/lmj623565791/article/details/37970961 ManagerFragmentActivity.java public class HuiShou_MainActivity extends Activity implements OnClickListene原创 2016-02-29 16:56:33 · 499 阅读 · 0 评论 -
BaseAdapter使用
http://blog.csdn.net/harvic880925/article/details/17258789转载 2016-01-12 17:52:30 · 577 阅读 · 0 评论 -
SmallActivity创建
SmallActivity创建的时候要做特殊调整在配置文件中调整ctivity的主题为: android:theme="@android:style/Theme.Translucent.NoTitleBar" 在布局文件中调整把根节点调整大小为下面的大小, xmlns:tools="http://schemas.android.com/tools" andr原创 2016-01-11 18:45:24 · 416 阅读 · 0 评论 -
ActionBar显示OptionsMenu
.在配置菜单的XML文件中,配置菜单项的showAsAction属性即可确定,该菜单项是否显示在ActinBar中显示OptionsMenuandroid:showAsAction属性的取值有: ifRoom:存在可用空间时显示在ActionBar中;never 从不显示在ActionBar中;always始终显示在ActionBar中;withTe原创 2016-01-10 18:02:32 · 1181 阅读 · 0 评论 -
ActionBar使用应用程序图标响应操作
调用ActionBar类的setDisplayHomeAsUpEnabled()方法即可使用应用程序图标作为导航且自动添加向左的小箭头。使用其它图标:调用ActionBar类的setIcon()方法即可//获取ActionBar对象ActionBar actionbar = getActionBar();//设置图标actionBar.setIcon(R.dra原创 2016-01-10 17:06:44 · 1635 阅读 · 0 评论 -
ActionBar第一课简介
.ActionBar简介ActionBar是显示在界面顶部的标题栏。官方推荐开发人员尽量使用ActionBar取代OptionsMenu和TabHost.典型应用方式有:使用导航栏中的应用程序图标响应操作;显示系统菜单(OptionsMenu)在导航栏中添加下拉式菜单;在导航栏中使用动作控件;添加导航选项标签(Tab);使用ActionProvider.原创 2016-01-10 17:01:44 · 929 阅读 · 0 评论 -
ViewPage第四课与Fragment合作
在viewpage第三课的基础上修改:第一步:创建四个继承Fragment的类Home_Fragment,Time_Fragment,Message_Fragment,Setting_Fragmentpackage com.example.viewpage_fragment;import com.example.viewpage_test.R;import android.os.Bu原创 2016-01-09 16:44:22 · 562 阅读 · 0 评论 -
ViewPage第二课为ViewPage添加标题
在第一课学前准备:掌握ViewPage第一课http://blog.csdn.net/wei_chong_chong/article/details/50468832为ViewPage添加标题:PageTabStrip是PageTitleStrip的子类PageTabStrip的使用与PageTitleStrip完全一样,实现效果,pageTabStrip的标题文字带有Indi原创 2016-01-09 16:15:04 · 1034 阅读 · 0 评论 -
ViewPage第三课自定义viewpage
第一步:创建四个xml文件,page01.xml,page02.xml,page03.xml,page04.xml作为viewpage容器的4个子级控件界面<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"原创 2016-01-09 15:14:50 · 1123 阅读 · 0 评论 -
selector之按钮状态图片改变
第一步在res文件夹下新建drawable文件夹该该文件夹里新建文件Androi XML文件,选择selector属性如下我新建的page01_radiobutton_drawable.xml文件用于处理page01_radiobutton按钮的图片显示/ViewPage_Test/res/drawable/page01_radiobutton_drawable.xml内容原创 2016-01-09 15:03:54 · 1150 阅读 · 0 评论 -
ViewPage第一课
第一步:在布局文件中加入:因为android.support.v4.view是扩展包所以要使用义view时也要使用这种形式 android:id="@+id/vp_viewpage" android:layout_width="fill_parent" android:layout_height="fill_parent原创 2016-01-06 14:46:13 · 582 阅读 · 0 评论 -
Fragment
onCreateView()方法Fragment第一次绘制它的用户界面的时候,系统会调用此方法,为了绘制Fragment的UI,此方法必须返回一个View,如果不显示UI,返回null即可Fragment加载方式(1)静态加载(2)动态加载先讲一下静态加载在Activity的layout文件中声明Fragment,需要特别注意的是中的andr原创 2016-03-20 10:28:05 · 413 阅读 · 0 评论 -
ViewPager图片预览之图片的放大缩小,移动,切换(第一课)连载
1,自由的放大和缩小2.双击放大与缩小3.放大以后可以进行自由的移动4.处理与ViewPager之间的的事件冲突需要用到的知识点1.Matrix (图片放大,缩小需要用到矩阵)2.ScaleGestureDetector(检测用户多指触控时缩放的手势)3.GestureDetector:检测用户双击时需要做的一些处理4.事件分发机制(当我们图片放大时,我们的图片是可原创 2016-08-01 14:33:50 · 1355 阅读 · 0 评论 -
ViewPager图片预览之图片的放大缩小,移动,切换(第四课)结束了
终极版package com.zhy.view;import android.annotation.SuppressLint;import android.content.Context;import android.graphics.Matrix;import android.graphics.RectF;import android.graphics.drawable.Draw转载 2016-08-01 18:40:42 · 1064 阅读 · 0 评论 -
仿微信引导界面PageAdapter
本案例实现一个仿微信的引导界面,功能是在程序第一次下载启动后出现一个引导界面,以后再次打开不会出现了(只会在程序第一次启动的时出现)实现步骤:第一步;写四个子布局page01.xml,page02.xml,page03.xml,page04.xml,作为启动以次显示的四个界面这里写了一个,其它三个类似page01.xml<LinearLayout xmlns:android=原创 2016-03-05 14:49:18 · 1061 阅读 · 0 评论 -
加载优化之缓存Lru,滑动停止的时候开始加载,滑动的时候不加载
今天这个是在异步加载图片的基础上进行修改的http://blog.csdn.net/wei_chong_chong/article/details/50880293大家都知道,图片加载是非常用流量的,我们加载图片希望只加载一次,再次浏览的时候不用重新加载,如何实现呢?解决方法:使用缓存Lru:Least Recently Used近期最少使用算法android提供了LruC原创 2016-03-14 15:33:33 · 565 阅读 · 0 评论 -
Fragment中加载网页(WebView)监听Back键 ,实现返回上一页的功能
首先创建一个抽象类BackHandledFragment,该类有一个抽象方法onBackPressed(),所有BackHandledFragment的子类在onBackPressed方法中处理各自对Back事件的消费逻辑。onBackPressed返回布尔值,宿主Activity将会根据该方法的返回值判断子Fragment是否有消费Back事件。此外,宿主FragmentActivity还会保持原创 2016-08-08 17:13:15 · 2874 阅读 · 0 评论 -
ScrollView中嵌套ListView只显示一行问题
自定义可适应ScrollView的ListView 这个方法和上面的方法是异曲同工,方法3是自定义了LinearLayout以取代ListView的功能,但如果我脾气就是倔,就是要用ListView怎么办?那就只好自定义一个类继承自ListView,通过重写其onMeasure方法,达到对ScrollView适配的效果。 下面是继承了ListView的自定义类:原创 2016-03-25 22:54:06 · 337 阅读 · 0 评论 -
ViewPager图片预览之图片的放大缩小,移动,切换(第三课)连载
第三课(第三步):支持以手指触控的任意点为中心开始缩放关键部分是在缩放的时候不断进行边界检测,防止放大后缩小后出现白边:/** * 在缩放的时候进行边界控制范围位置控制 */ private void checkBorderAndCenterWhenScale() { // TODO Auto-generated method stub RectF rect = get原创 2016-08-01 14:50:11 · 989 阅读 · 0 评论 -
ViewPager图片预览之图片的放大缩小,移动,切换(第二课)连载
第二步:给自定义控件添加支持手指触控缩放的功能:(支持手指触控放大)因为涉及到手势触摸事件所以要实现OnScaleGestureListener,OnTouchListener这两个接口。声明成员变量: private ScaleGestureDetector mScaleGestureDetector;//捕获用户多指触控缩放的比例在构造函数中初始化:mScaleGestureD原创 2016-08-01 14:42:18 · 776 阅读 · 1 评论 -
几种Tab的实现方法
转载请注明出处,谢谢!学了这久Android,今天来总结一下几种Tab的实现方法实现方法一:ViewPage来实现首先创建一个top.xml布局和一个bottom.xml布局,然后在主界面中通过Include属性添加top.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"原创 2016-04-12 14:50:56 · 3409 阅读 · 2 评论 -
高德地图定位服务
项目需要获得位置信息,本来想用百度地图服务呢,无奈百度定位sdk下载不了,不知道什么情况。下面介绍高德定位SDK的使用首先进入高德开发者平台,注册登录,创建应用,获得Key ,然后下载定位SDK并导入到工程的lib目录下在配置文件中添加定位服务<service android:name="com.amap.api.location.APSService">添加met原创 2016-03-31 18:16:14 · 3333 阅读 · 0 评论 -
属性动画
这次我们来学习一下属性动画这里你可以学到:实现Animation框架的功能属性动画常用属性动画的监听事件这里我采用逐步优化的方式学习使用属性动画的各种操作(你可以对比各种方法的优缺点)属性动画改变的是对象的属性,只要对象某个的属性有get和setf方法就可以对这个属性进行属性动画先看一个简单的例子吧:这里我在布局文件中添加了一个ImageView的控件和一个原创 2016-03-07 18:13:36 · 877 阅读 · 0 评论 -
ViewPager
<android.support.v4.view.ViewPager android:id="@+id/vp_viewpage" android:layout_width="fill_parent" android:layout_height="fill_parent" > v4是兼容包,解决向下兼容问题加载显示的页卡将La原创 2016-03-20 17:40:49 · 375 阅读 · 0 评论 -
android 如何去掉标题栏
在android中去掉标题栏有三种方法,它们也有各自的特点。1.在代码里实现this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏这句代码要写在setContentView()前面。2.在清单文件(manifest.xml)里面实现<application android:icon原创 2016-04-01 15:00:58 · 578 阅读 · 0 评论 -
android动画基础
以前写了一个android属性动画的博客今天来系统的学习一下android动画基础android目前一共4中动画1Tween Animation变换动画2.FrameAnimation帧动画3.Layout Animation布局动画4.Property Animation属性动画一Tween Animation(变换动画)Alpha :渐变透明度动画Scale原创 2016-03-20 10:37:53 · 514 阅读 · 0 评论 -
短信验证(手机号注册,绑定手机号获取验证码)
今天写一个常见的功能——手机app中注册或绑定手机号的获取验证码的功能。也就是短信验证功能具体效果就是,你在注册界面填写手机号,点击获取验证码按钮,---然后会收到验证短信,填入验证码后点击注册按钮,如果验证正确就可以跳转到另外一个界面1.首先大家需要在mob官网注册一个账号,mob是一个免费的短信验证平台2.在mob.com后台创建应用3.下载对应的sdk4.将sdk作为一个原创 2016-03-06 17:06:13 · 30651 阅读 · 4 评论 -
自定义Camera
今天来学习自定义Camera实现相机拍照功能拍照界面:因为取景框要有实时刷新的效果所以普通的view不行,一般使用surfaceView上面的按钮是拍照按钮<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android原创 2016-03-31 10:33:06 · 831 阅读 · 0 评论 -
相机拍照Camera
在App中使用Camera的两种方式1.调用系统相机,或者是具有相机功能的应用2.自定义相机案例一调用系统相机,在布局文件添加按钮,在主程序中添加按钮点击事件://隐式调用系统的相机应用 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivity(intent);如何让自己的应原创 2016-03-30 12:22:07 · 558 阅读 · 0 评论 -
广告图片滚动播放ViewPage
本案例实现一个广告滚播的效果实现步骤如下:第一步:xml布局文件<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_pa原创 2016-02-29 16:57:40 · 664 阅读 · 0 评论 -
Spinner使用
今天使用Spinner来实现一个这样的效果布局样式是这样的:如下点击选择下面的Spinner中的选项,获取点击的内容显示在上面的TextView中布局文件mainx.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_原创 2016-03-26 17:46:12 · 367 阅读 · 0 评论 -
HTTP协议
几种常见的响应码200 OK 客户端请求成功400 Bad Request 客户端请求有语法错误,不能被服务器所理解402 Forbidden 服务器收到请求,但是拒绝提供服务404 Not Found 请求资源不存在,eg:输入了错误的URL500 Internal Server Error 服务器发生不可预期的错误503 Server Unavailable 服务器当前原创 2016-04-14 16:42:01 · 2485 阅读 · 0 评论 -
BroadcastReceiver
今天来更深入的了解一下广播使用广播需要注意:1.BroadcastReceiver的生命周期只有十秒左右:所以,不能再BroadcastReceiver中做比较耗时的操作,而且也不能使用子线程做耗时操作,因为有可能你还没做完它的生命周期已经到了,主线程被杀死了,当然子线程也会被终结,如果需要执行耗时操作,可以通过发送Intent给Service,由Service来完成原创 2016-04-10 10:01:05 · 1379 阅读 · 1 评论