- 浏览: 304072 次
- 性别:
- 来自: 广州
最新评论
-
qipa2015:
hao
Android中自定义SeekBar的背景颜色,进度条颜色,以及滑块的图片 -
chungehenyy:
Android中的JSON详细总结 -
wangys198:
请教下怎么加入一个jar包
说说APK反编译(代码插入)的那点事 -
andy199:
Android的TextView使用Html来处理图片显示、字体样式、超链接等 -
tyjxf:
加载图片是个烦人的事,我也正在困扰中
Android实现ListView异步加载图片
文章列表
一、概念及说明Android为了屏蔽进程的概念,利用不同的组件[Activity、Service]来表示进程之间的通信!组件间通信的核心机制是Intent,通过Intent可以开启一个Activity或Service,不论这个Activity或Service是属于当前应用还是其它应 ...
ListView的Adapter的作用如下图所示:Adapter的作用就是ListView界面与数据之间的桥梁,当列表里的每一项显示到页面时,都会调用Adapter的getView方法返回一个View。想过没有? 在我们的列表有1000000项时会是什么样的?是不是会占用极大的系统资源?
先看看下面的代码:
public View getView(int position, View convertView, ViewGroup parent) {
View item = mInflater.inflate(R.layout.list_item_icon_text, null);
...
LayoutInflater的作用类似于 findViewById()(1)LayoutInflater是用来找layout下xml布局文件,并且实例化。
(2)findViewById()是找具体xml下的具体 widget控件(如:Button)。为了让大家容易理解我做了一个简单的Demo,主布局main.xml里有一个TextView和一个Button,当点击Button,出现 Dialog,而这个Dialog的布局方式是我们在layout目录下定义的custom_dialog.xml文件(里面左右分布,左边 ImageView,右边TextView)。
//通后对 ...
1、 数据库的cursor没有关闭
2、 构造adapter没有使用缓存contentview
衍生的listview优化问题:减少创建View的对象,充分使用contentview,可以使用静态类来处理优化getView的过程
3、Bitmap对象不使用时采用recycle()释放内存
4、Activity中的对象生命周期大于Activity
调式方法:DDMS->HEAPSIZE->adtaobject->total size
Android应用程序被限制在16MB的堆上运行,至少在T-Mobile G1上是这样。对于手机来说,这是很大 ...
(1)Android系统是基于Linux 2.6内核开发的开源操作系统,而linux系统的内存管理有其独特的动态存储管理机制。不过Android系统对Linux的内存管理机制进行了优化,Linux系统会在进程活动停止后就结束该进程,而Android把这些进程都保留在内存中,直到系统需要更多内存为止。这些保留在内存中的进程通常情况下不会影响整体系统的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速度。
(2)Android的Low Memory killer是在标准的linux kernel的OOM基础上修改而来的一种内存管理机制,当系统内存不足时,杀死Bad进程释放其内存,Ba ...
通过以下部分代码,我们可以了解清楚Activity页面在横,竖屏切换时,生命周期的变化:
public class AndroidLifecycle extends Activity {
public void onCreate(Bundle savedInstanceState) {
System.out.println("First Activity =======onCreate()========");
super.onCreate(savedInstanceState);
...
先看一下系统浏览器com.android.browser 启动类在AndroidManifest.xml 中的声明:
<activity android:theme="@style/BrowserTheme" android:label="@string/application_name" android:name="BrowserActivity" android:launchMode="singleTask" android:configChanges="keyboardHidden|orien ...
对于单一Activity的应用来说,退出很简单,直接finish()即可。当然,也可以用killProcess()和System.exit()这样的方法。
但是,对于多Activity的应用来说,在打开多个Activity后,如果想在最后打开的Activity直接退出,上边的方法都是没 ...
Map获取键值,Map的几种遍历方法
- 博客分类:
- Java
Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,Map.Entry同时也提供了一个setValue()方法,程序员可以使用它修改map里面的值。
Map<String, String> map = new HashMap();
for (Map.Entry entry : map.entrySet()) {
Object key = entry.getKey( );
}
Map hash ...
package lee.service;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.xmlpull.v1.XmlPullParser;
import android.util.Xml;
import lee.vo.Person;
public class XMLPullService {
public List<Person> readXML(InputStream inStream) throws Exceptio ...
1、JSON(JavaScript Object Notation) 定义:
一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。 – Json.org
2、JSON的结构:
(1) Name/Value Pairs(无序的):类似所熟知的Keyed list、 Hash table、Disctionary和Associative array。在Android平台中同时存在另外一 ...
android中实现view的更新有两组方法,一组是invalidate,另一组是postInvalidate,其中前者是在UI线程自身中使用,而后者在非UI线程中使用。 Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中调用。 Android程序中可以使用的界面刷新方法有两种,分别是利用Handler和利用postInvalidate()来实现在线程中刷新界面。 利用invalidate()刷新界面 实例化一个Handler对象 ...
android中读取文件中文乱码如何解决
File file = new File(path);
FileInputStream is=new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(is,"GB2312"));
遍历listView 的的单选框
- 博客分类:
- Android
ListView listView = (ListView)findViewById(R.id.配置文件中ListView的ID);
//全选遍历ListView的选项,每个选项就相当于布局配置文件中的RelativeLayout
for(int i = 0; i < listView.getChildCount(); i++){
View view = listView.getChildAt(i);
CheckBox cb = (CheckBox)view.findViewById(R. ...
请查看连接:http://blog.csdn.net/qinlicang/archive/2010/12/28/6103188.aspx