- 博客(68)
- 资源 (1)
- 收藏
- 关注
转载 Handler机制分析
出于性能优化考虑,Android的UI操作并不是线程安全的,这意味着如果有多个线程并发操作UI组件,可能导致线程安全问题。为了解决这个问题,Android制定了一条简单的原则:只允许UI线程(亦即主线程)修改Activity中的UI组件。当一个程序第一次启动时,Android会同时启动一条主线程,主线程主要负责处理与UI相关的事件,如用户的按键事件、用户接触屏幕的事件、屏幕绘图事件,并把相关的事件分
2016-03-08 19:57:44
375
转载 进程和线程的区别
线程和进程进程是处于运行过程中的程序,其具有一定的独立功能,有以下3个特点:独立性:进程是系统中独立存在的实体,它可以拥有自己独立的资源,每一个进程都拥有自己私有的地址空间,在没有经过进程本身允许的情况下,一个用户进程不可以直接访问其他进程的地址空间。动态性:进程与程序的区别在于,程序只是一个静态的指令集合,而进程是一个正在系统中活动的指令集合,在进程中加入了时间的概念,进程具有自己的生命周期和
2016-03-07 23:04:34
564
转载 【Android开发经验】来来来,同学,咱们讨论一下“只能在UI主线程更新View”这件小事
转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 (由于文章写得太好,不小心就转载了)”只能在UI主线程中更新View“。这句话很熟悉吧?来来,哥们,看一下下面的例子@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate
2015-12-26 22:53:32
598
原创 类成员初始化
在类内部:初始化的顺序静态的成员变量;普通的成员变量;构造器的调用。在派生类中:初始化的顺序调用基类的构造器按声明顺序调用成员的初始化方法调用派生类构造器主体大多数类的初始化都是按照这些顺序结合在一起的。下面是一个例子:public class Test extends Sub{ public static int field = getField2(); publi
2015-12-20 21:39:49
693
转载 Android中onTouch方法的执行过程以及和onClick执行发生冲突的解决办法
1、 第一个问题是控件本身的onTouch和onClick方法的执行冲突首先自定义一个MyLayout继承LinearLayout,重写dispatchTouchEvent,onInterceptTouchEvent,onTouchEvent方法,代码如下:package com.bbdtek.demo; import android.content.Context; import andro
2015-12-15 20:37:36
2337
原创 android MVC
MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。模型 - 视图 - 控制器(MVC)设计定义它们之间的相互作用。模型(Model) 用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“ Model”有对数据直接访问的权力,例如对数据库的访问。“
2015-12-15 19:02:15
686
转载 ListView的原理
Listview在项目开发使用率是非常高的,一直以来都只是会使用,今天突然想看看ListView和Adapter是怎么配合的。列表的显示需要三个元素:ListVeiw: 用来展示列表的View。适配器 : 用来把数据映射到ListView上数据: 具体的将被映射的字符串,图片,或者基本组件。ListView 针对每个item,要求 adapter “返回一个视图” (getView)
2015-11-19 14:49:48
678
转载 理解Fragment生命周期
官网帮助文档链接:http://developer.android.com/guide/components/fragments.html主要看两张图,和跑代码一,Fragment的生命周二,与Activity生命周期的对比场景演示 : 切换到该Fragment 11-29 14:26:35.095: D/AppListFragment(7649): onAttach 11-29 14:26:3
2015-11-17 22:23:53
347
转载 Android MediaPlayer各种状态切换
1.状态图对播放音频/视频文件和流的控制是通过一个状态机来管理的。下图显示一个MediaPlayer对象被支持的播放控制操作驱动的生命周期和状态。椭圆代表MediaPlayer对象可能驻留的状态。弧线表示驱动MediaPlayer在各个状态之间迁移的播放控制操作。这里有两种类型的弧线。由一个箭头开始的弧代表同步的方法调用,而以双箭头开头的代表的弧线代表异步方法调用。 通过这张图,我们可以知道一个M
2015-10-30 14:40:30
5099
原创 Android studio 下使用mob的短信验证码SMSSDK
手动创建module,移动相关文件,最后添加依赖1,在你项目的根目录新建一个android library module。如图 2,选择android library(老版本的界面可能不是这样子的) 3,填写module的信息。module的名字你可以自己取,建议还是smssdk。package name一定要是cn.smssdk,因为我们代码里面就是用这个包名。当然你这里填错也没事,到后面都可
2015-10-25 12:24:52
4222
1
转载 Android开发教程:shape和selector的结合使用
shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。1.Shape简介 作用:XML中定义的几何形状 位置:res/drawable/文件的名称.xml使用的方法: Java代码中:R.drawabl
2015-10-25 11:49:01
575
转载 Android之drawable state各个属性详解
android:drawable 放一个drawable资源android:state_pressed 是否按下,如一个按钮触摸或者点击。android:state_focused 是否取得焦点,比如用户选择了一个文本框。android:state_hovered 光标是否悬停,通常与focused state相同,它是4.0的新特性android:state_selected 被选中,它与focu
2015-10-25 11:35:57
484
原创 AndroidStudio环境下导出APK
(1)Android Studio菜单Build->Generate Signed APK(2)弹出窗口 (3)若没有密钥库及密钥,则创建密钥库及密钥,创建后会自动选择刚创建的密钥库和密钥(已拥有密钥库跳过) 点击“Create new…”按钮创建密钥库 Key store path:密钥库文件的地址 Password/Confirm:密钥库的密码 Key: Alia
2015-10-25 11:26:29
1772
转载 android layout的一些注意事项
最常用的布局是LinearLayout,RelativeLayout和FrameLayoutgravity属性对于LinearLayout和RelativeLayout有效,对FrameLayout无效laout_gravity属性对于FrameLayout有效,对于LinearLayout内部元素部分有效(和orientation有关,如果是vertical,则top和bottom无效,反之,
2015-10-25 11:07:27
457
转载 Android Context简介
前言 Context在android中的作用不言而喻,当我们访问当前应用的资源,启动一个新的activity的时候都需要提供Context,而这个Context到底是什么呢,这个问题好像很好回答又好像难以说清楚。从字面意思,Context的意思是“上下文”,或者也可以叫做环境、场景等,尽管如此,还是有点抽象。从类的继承来说,Context作为一个抽象的基类,它的实现子类有三种:Applicatio
2015-10-20 00:01:13
386
转载 mediaplayer stop called in state 1
类似以上的错误,是由于mediaplayer的stop步骤状态1时就被调用了, 即还没执行setDataSource (String path)和prepare()之类的操作, 若出现mediaplayer called in state 之类的问题,都是由于执行步骤有误所造。
2015-10-09 22:14:09
1432
转载 Github错误:fatal: Authentication failed for 'https://github.com/ ...
GitHub push代码发生错误:fatal: Authentication failed for ‘https://github.com/ …使用的https提交,在用SourceTree提交代码时候发生错误,返回的错误提示说:fatal: Authentication failed for 'https://github.com/ ... 解决方案,重新执行git config命令配置用户
2015-10-07 17:09:51
17806
转载 Android studio 中gradle的理解
什么是Gradle?Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言。Gradle是可以用于Android开发的新一代的 Build System, 也是 Android Studio默认的build工具。
2015-10-07 12:15:02
744
转载 Android Adapter以及getView()方法的理解
Android Adapter基本理解: 我的理解是: 1、一个有许多getter的类(就是getView(),getCount()….这些方法)2、有多少个get方法?都是什么? 这些getter是特定的,你可以复写他们,全部的方法如下: 其中一般我们只用复写getCount(),getView(),getItemId(),getItem()这四个方法
2015-10-06 20:44:12
871
原创 如何在控件没有绘制完成之前读取控件的长宽
说到获取view的大小,一般想到使用View中的getWidht和getHeight,getMeasuredWidth和getMeasuredHeight。但是这几个方法一般都是在view的onlayout的方法执行以后才能进行获得的,如onlayout方法没有执行此时我们应该怎么来获得view的大小呢?
2015-10-06 16:10:51
424
转载 在有TabHost控件的页面,解决onKeyDown方法不能拦截KeyEvent.KEYCODE_BACK事件
在有TabHost控件的页面,onKeyDown方法不能拦截
2015-10-06 15:51:27
711
转载 Mediaplayer start called in state 0
在使用Mediaplayer播放音频时,出现start called in state 0,原因主要是因为你在音频的播放顺序出现了问题
2015-10-05 14:34:44
8237
原创 音乐播放器之简单播放(MediaPlayer、Service、BroadcastRecevier的结合用法)
(小白一个,代码仅供参考)做一个音乐播放器,就要考虑到实现后台音乐的播放,进度条的实现,播放时间和音频时间的实现。 在Android中,BroadcastRecevier Service 和 MediaPlayer就可以实现下面的操作。 先看Activitypackage com.example.bear.test;import android.app.Activity;import androi
2015-08-09 22:43:21
1956
原创 windows PHP+Apache环境搭配
PHP下载:http://windows.php.net/download#php-5.6Apachex下载:http://www.apachelounge.com/download/MySQL下载:http://dev.mysql.com/downloads/windows/installer/一、配置PHP1)将php解压到你指定的位置。2)打开
2015-05-27 16:06:08
679
原创 android: Error:元素内容必须由格式正确的字符数据或标记组成
作为一个小白,在Android上总是会出现一个又一个的小错误,总会让我们感觉到蛋疼。这时我们看看colors.xml中的数据看起来没错误,Android studio也没有提示错误。可是错误只向的就是这个文件。我百度了一下,发现这样就可以正常运行了。还有在使用数组和变量时一定要注意初始化,不然就会报空指针错误了。
2015-05-24 12:44:25
7444
原创 requestFeature()must be called before adding content 错误
解决:requestFeature()must be called before adding content 错误下面是正确的代码,用于隐藏标题的。super.onCreate(savedInstanceState); //取消标题requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.ac
2015-04-18 10:00:34
1583
转载 setOnClickListener报空指针异常
1.异常提示:2.错误原因:先看代码:[java] view plaincopypublic class MainActivity extends ActionBarActivity { private Button btn_test; @Override
2015-04-16 22:42:52
836
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅