文章分类 - Android
摘要:一、分析1、最简单的布局:只有一个ListView如果整个页面只有一个ListView的话,那么由于ListView本身带有滚动效果,所以当加载的数据超过页面显示的范围时,可以通过上下滑动来查看所有的item。因此这种情况下,不需要添加ScrollView。2、其它布局A+ListView这种情况下,如果布局A定义在ListView的前面,那么当布局A所占的比例较大,或者ListView加载的数据较多时,都会导致ListView显示不完全。同样,由于ListView自身可以滚动,因此仍然可以通过上下滚动来查看ListView的所有item。如图所示:3、其它布局B+ListView这种情况下,
阅读全文
摘要:onInterceptTouchEvent用于改变事件的传递方向。决定传递方向的是返回值,返回为false时事件会传递给子控件,返回值为true时事件会传递给当前控件的onTouchEvent(),这就是所谓的Intercept(拦截)。[tisa ps:正确的使用方法是,在此方法内仅判断事件是否需要拦截,然后返回。即便需要拦截也应该直接返回true,然后由onTouchEvent方法进行处理。] onTouchEvent用于处理事件,返回值决定当前控件是否消费(consume)了这个事件。尤其对于ACTION_DOWN事件,返回true,表示我想要处理后续事件;返回false,表示不关心此事
阅读全文
摘要:今天编程碰到了一个问题:有一款平板,打开一个有EditText的Activity会默认弹出输入法。为了解决这个问题就深入研究了下android中焦点Focus和弹出输入法的问题。在网上看了些例子都不够全面,在这里全面总结下。 一:EditText为什么会默认弹出输入法? 同样的代码,碰到有EditText控件的界面时有的机子会弹出输入法,有的机子不会弹出。不好意思,这问题我也一头雾水,谁知道可以告诉我,否则我就把这个问题留下来,以后研究android源码时再搞个清楚。但是...我有解决方案。 二:默认弹出和默认关闭输入法的解决方案。 1.默认关闭,不至于进入Activity就打开...
阅读全文
摘要:缺第6条,总共19条。1:查看是否有存储卡插入String status=Environment.getExternalStorageState();if(status.equals(Enviroment.MEDIA_MOUNTED)){ 说明有SD卡插入}2:让某个Activity透明OnCreate 中不设Layoutthis.setTheme(R.style.Theme_Transparent);以下是 Theme_Transparent的定义(注意transparent_bg是一副透明的图片)3:在屏幕元素中设置句柄使用Activity.findViewById来取得屏幕上的元素的句柄
阅读全文
摘要:当屏幕中包含一个ViewGroup,而这个ViewGroup又包含一个子view,这个时候android系统如何处理Touch事件呢,接下来将对此问题进行深入了解,感兴趣的朋友可以了解参考下,或许对你有所帮助。android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解。一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->ACTION_MOVE...->ACTION_MOVE->ACTION_UP当屏幕中包含一个ViewGroup
阅读全文
摘要:activity-alias是android里为了重复使用Activity而设计的。当在Activity的onCreate()方法里,执行getIntent().getComponent().getClassName();得到的可能不是这个Activity的名字,有可能是别名的名字,例如:在AndroidMenifest.xml有如下配置:<activityandroid:name=".TestAndroid"android:icon="@drawable/ic_menu_mark"><intent-filter><acti
阅读全文
摘要:Android的Margin和Padding跟Html的是一样的。如下图所示:黄色部分为Padding,灰色部分为Margin。通俗的理解 Padding 为内边框,Margin 为外边框对应的属性为android:layout_marginBottom="25dip"android:layout_marginLeft="10dip"android:layout_marginTop="10dip"android:layout_marginRight="10dip"android:paddingLeft="
阅读全文
摘要:RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.FILL_PARENT,50); lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE); yourRelativelayout.addView(yourImageView,lp);
阅读全文
摘要:由于这两天在做listView的东西,所以整理出来一些我个人认为比较特别的属性,通过设置这样的属性可以做出更加美观的列表首先是stackFromBottom属性,这只该属性之后你做好的列表就会显示你列表的最下面,值为true和falseandroid:stackFromBottom="true"第二是transciptMode属性,需要用ListView或者其它显示大量Items的控件实时跟踪或者查看信息,并且希望最新的条目可以自动滚动到可视范围内。通过设置的控件transcriptMode属性可以将Android平台的控件(支持ScrollBar)自动滑动到最底部。and
阅读全文
摘要:正常关闭应用程序:当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用:第一种方法:首先获取当前进程的id,然后杀死该进程。android.os.Process.killProcess(android.os.Process.myPid())通过这种方式不能将应用程序完全杀死,并且他不会把当前应用应用的Activity的task任务栈清空第二种方法:终止当前正在运行的Java虚拟机,导致程序终止System.exit(0);不会把自己的应用程序杀死第三种方法:强制关闭与该包有关联的一切执行ActivityManager manager = (ActivityManage
阅读全文
摘要:两者的相同点:如果目标Activity不存在,两者都会创建一个新的Task,而如果目标Activity存在,两者都会切换到已有的Task,并且目标Actvity上面所有的Activity,并从Activity处开始执行。两者的区别:第一,调用者本身如果是SI,那么肯定会创建一个新的Task,无论目标Activity是否存在,但对于ST,就没有这么“极端”;第二,SI所在的Task只会有一个Activity对象,就是这个SI,而ST可以包含多个Activity,但ST所对应的Activity肯定是根Activity。
阅读全文
摘要:1、EditText输入的文字为密码形式的设置(1)通过.xml里设置:把该EditText设为:android:password="true"// 以”.”形式显示文本(2)在代码里设置:通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码。editText.setTransformationMethod(PasswordTransformationMethod.getInstance());//设置密码为不可见。2、(1)EditText输入的文字为电话号码Android:phoneNumber=”true”//输入
阅读全文
摘要:package com.android.ovaldemo;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Paint;import android.util.AttributeSet;import android.view.View;public class Oval extends View { private Paint mPain
阅读全文
摘要:首先需要在Manifest文件中添加以下内容:<uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" /> <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />程序获取摄像头使用以及自
阅读全文
摘要:OPhone Camera 介绍在OPhone手机中通过android.hardware.Camera类来控制摄像头设备,通过Camera类可以与摄像头服务取得(断开)链接、可以设置摄像头的各种属性、开始(结束)图像预览、拍照或则录像。要使用Camera只有通过调用Camera的open() 函数来得到一个Camera对象。另外OPhone系统还提供了一些接口来控制Camera的状态:android.hardware.Camera.AutoFocusCallback:当摄像头自动对焦的时候调用,该接口具有一个函数voidonAutoFocus(booleansuccess, Camera ca
阅读全文
摘要:本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceState(),并且在介绍这两个方法之后,再分别来实现使用InstanceState保存和恢复数据功能、Android实现屏幕旋转异步下载效果这样两个示例。 首先来介绍onSaveInstanceState() 和 onRestoreInstanceState()。关于这两个方法,一些朋友可能在Android开发过程中很少用到,但在有时候掌握其用法会帮我们起到比较好的效果。尤其是在应用程序在不知道的情况下退出后,如何实现其数据保存的功能。先来让我们看..
阅读全文
摘要:android 官网文档对AIDL讲解很清楚,这里稍微记录下:实现AIDL分以下三步:1. 在工程目录下创建AIDL文件note:在AIDL文件中不能用static来修饰某一方法2.实现AIDL接口在服务端实现:interface A( public void getPid(int id);)A.stub mBinder = new A.stub(){ public void getPid(int id){ return id; }}3 提供接口给客服端public class AService extends Service{ @override public void onCrea...
阅读全文
摘要:为什么写这篇文章呢?前段时间在研究telephony时,一直没有在framework下发现对telephony的初始化(PhoneFactory.java中的makeDefaultPhones函数)的调用。结果全局搜索之后发现在application PhoneApp(packages/apps/Phone)中调用了。但是application PhoneApp既没有被Broadcast唤醒,也没有被其他service调用,那么是android是通过什么方式来启动PhoneApp,所以就发现了属性android:persistent。 在AndroidManifest.xml定义中,app..
阅读全文

浙公网安备 33010602011771号