`
文章列表
状态栏: Rect rect = new Rect(); getWindow().getDecorView().getWindowVisibleDisplayFrame(rect); rect.top即为状态栏的高度。 标题栏: getWindow().findViewById(Window.ID_ANDROID_CONTENT).getTop(); 注意要在onWindowFocusChanged里用这个方法,否则很有可能是0; <script type="text/javascript"> $(funct ...
Activity生命周期中,onStart, onResume, onCreate都不是真正visible的时间点,真正的visible时间点是onWindowFocusChanged()函数被执行时。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().spl ...
LayoutParams的属性:int height、int width。 MarginLayoutParams的属性:int leftMargin、int topMargin、int rightMargin、int bottomMargin。 RelativeLayout.LayoutParams的属性:自己特有的一些属性,RelativeLayout有boolean alignWithParent。 总结:这些的关联性就是其继承,RelativeLayout.LayoutParams继承自MarginLayoutParams,MarginLayoutParams继承自 ...
getX、getY:x,y是相对于控件本身左上点的相对位置; getRawX、getRawY:rawx,rawy是相对于屏幕左上角的位置。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; ...
JNI(Java Native Interface)java调用本地接口 的技术名词 NDK(Native Developer Kit)谷歌给开发人员的工具包 NDK 是纯 C 哦,JNI就像戴套子一样,Java 要搞 C ,中间必须隔着个 JNI。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { ...
倒腾了一下午,但其实没必要,android2.2.2对NDK开发已经非常便捷了。 只要预先在Android SDK里下载CMake、LLDB、NDK,然后在创建项目的时候勾上Include C++ Support。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).tex ...
Sax和Pull都是基于流的解析器。 但是SAX在解析的过程中是不可控的,而PULL在解析的过程中是可控的,随便找个sax和pull的例子比较一下就可以发现,pull是一个while循环,随时可以跳出,而sax不是,sax是只要解析了,就必须解析完成。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { va ...
当有且只有一个activity时,通过重写按下Back键的回调函数,转成Home键的效果即可。 @Override public void onBackPressed() { Intent home = new Intent(Intent.ACTION_MAIN); home.addCategory(Intent.CATEGORY_HOME); startActivity(home); } 为达到此类效果,Activity实际上提供了直接的方法。 activity.moveTaskToBack(true);此方法直接将当前Activity所在的 ...
想想就可以了,它的进程杀不死是因为,有些厂商如小米、华为等公司为了更好的用户体验,将其设置为了白名单,所以才杀不死的,如果不相信,可以将包名改成跟QQ一样试下。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; ...
invalidate:用在UI线程; postInvalidate:用在非UI线程。 <script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = ...
需要:目标程序的包名、主类名。 代码: Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_LAUNCHER); ComponentName cn = new ComponentName("com.negier.bitmap", "com.negier.bitmap.MainActivity"); intent.setComponent(cn); startActivity(intent); com.ne ...
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); int width = getDefaultSize(0, widthMeasureSpec); int height = getDefaultSize(0, heightMeasureSpec); setMeasuredDimension(width,height); } ...
顾名思义他们是用来取得Drawable的固有的宽度和高度。那么问题就来了:我们有时候通过这两个方法取到的宽和高和实际的并不一样,这是怎么回事呢? Drawable这个类是对所有可以画的东西的抽象,他可以是一张图片,也可以是实体的颜色,线等等,我们不能简单的认为它是一张图片。笔者经过实验发现,我的测试设备dpi是320,而android为了让同一个view在不同dpi的设备上大小尽量保持一致,所以其图片在mdpi、hdpi、xhdpi里展示的图片大小在不同的手机手机屏幕里面不太一样。 其单位还是px。 <script type="text/javascri ...
onAttachedToWindow 是view 本身的回调,用于初始化一些东西相当于onstart 。当view 被添加到window中,被绘制之前的回调。如addview(this view); onDetachedFromWindow 是view 本身的回调,用于销毁一些东西onstop,当view被从window中删除时的回调。如 removeview(this view); <script type="text/javascript"> $(function () { $('p ...
OnGlobalLayoutListener 是ViewTreeObserver的内部类,当一个视图树的布局发生改变时,可以被ViewTreeObserver监听到,这是一个注册监听视图树的观察者(observer),在视图树的全局事件改变时得到通知。ViewTreeObserver不能直接实例化,而是通过getViewTreeObserver()获得。 除了OnGlobalLayoutListener,ViewTreeObserver还有以下内部类: 1.ViewTreeObserver.OnGlobalFocusChangeListener 当在一个视图树中的 ...
Global site tag (gtag.js) - Google Analytics