随笔分类 -  android提高篇

上一页 1 ··· 85 86 87 88 89
摘要:这是谷歌官方给我们提供的一个兼容低版本安卓设 备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜 单等等。那如何使用它呢,与LisstView类似,我们也需要一个适配器,他就是PagerAdapter。看一下api的图片,ViewPager的功能就是可以使视图滑动,就像Lanucher左右滑动那样。分三个步骤来使用它: 1.在住布局文件里加入[mw_shl_code=java,true][/mw_shl_code]2.加载要显示的页卡, [mw_shl_code=java,true]LayoutInf 阅读全文
posted @ 2013-08-13 10:52 brave-sailor 阅读(310) 评论(0) 推荐(0) 编辑
摘要:Fragment 的基础知识介绍 1.1 概述1.1.1 特性By hebang32624Fragment 是 activity 的界面中的一部分或一种行为。可以把多个 Fragment 组合到一个 activity 中来创建一 个多面界面并且可以在多个 activity 中重用一个 Fragment。可以把 Fragment 认为模块化的一段 activity,它具 有自己的生命周期,接收它自己的事件,并可以在 activity 运行时被添加或删除。Fragment 不能独立存在,它必须嵌入到 activity 中,而且 Fragment 的生命周期直接受所在的 activity 的影 响。 阅读全文
posted @ 2013-08-13 10:03 brave-sailor 阅读(604) 评论(0) 推荐(0) 编辑
摘要:要管理fragment们,需使用FragmentManager,要获取它,需在activity中调用方法getFragmentManager()。你可以用FragmentManager来做以上事情:1使用方法findFragmentById()或findFragmentByTag(),获取activity中已存在的fragment们。2使用方法popBackStack()从activity的后退栈中弹出fragment们(这可以模拟后退键引发的动作)。3用方法addOnBackStackChangedListerner()注册一个侦听器以监视后退栈的变化。更多关于以上方法的信息,请参考“Fra 阅读全文
posted @ 2013-08-13 09:46 brave-sailor 阅读(212) 评论(0) 推荐(0) 编辑
摘要:与activity通讯尽管fragment的实现是独立于activity的,可以被用于多个activity,但是每个activity所包含的是同一个fragment的不同的实例。Fragment可以调用getActivity()方法很容易的得到它所在的activity的对象,然后就可以查找activ... 阅读全文
posted @ 2013-08-13 09:27 brave-sailor 阅读(325) 评论(0) 推荐(0) 编辑
摘要:通常,一个活动可能包含一个或多个协同工作的Fragment以向用户展现一致的UI。在这种情况下,Fragment之间就需要彼此通信并交换数据,这是非常重要的。例如,一个Fragment可能包含了一个条目列表(如来自一个RSS提要的帖子)。当用户轻点Fragment上的某个条目时,所选条目的详细信息可能会显示在另一个Fragment上。下面的“试一试”介绍了一个Fragment如何访问另一个Fragment中的视图。(1) 使用上一节创建的项目,向Fragment1.xml文件中添加如下所示的粗体代码:(2) 向fragment2.xml文件中添加如下所示的粗体代码:(3) 修改MainActi 阅读全文
posted @ 2013-08-13 09:23 brave-sailor 阅读(395) 评论(0) 推荐(0) 编辑
摘要:与活动类似,Fragment也有自己的生命周期。理解Fragment的生命周期有助于在Fragment销毁时能恰当地保存其实例,然后在重新创建时能够将其恢复至之前的状态。下面的“试一试”将研究Fragment的各种状态。(1) 使用上一节创建的项目,向Fragment1.java文件中添加如下所示的粗体代码:package net.learn2develop.Fragments;import android.app.Activity;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutIn 阅读全文
posted @ 2013-08-13 09:16 brave-sailor 阅读(295) 评论(0) 推荐(0) 编辑
摘要:本文主要介绍如何利用ViewPager、Fragment、PagerTabStrip实现多页面滑动效果。即google play首页、新浪微博消息(at、评论、私信、广播)页面的效果。ViewPager+Fragment组合为google推荐方式,比TabActivity+Activity的效率高的多1、添加android support包因为上面的几个类都是在android support包中才提供,我们先添加包。在Eclipse->Window->Android SDK Manager,选择列表中Extras->Android Support Library进行安装。下载 阅读全文
posted @ 2013-08-13 01:36 brave-sailor 阅读(353) 评论(0) 推荐(0) 编辑
摘要:第一类:Frame By Frame 帧动画( 不推荐游戏开发中使用) 所谓帧动画,就是顺序播放事先做好的图像,类似于放电影; 分析: 此种方式类似我之前的那种利用设置可视区域的方式来实现动画效果,不仅类似而且还不如!所以此种方式在此不予分析;第二类:Tween Animation 渐变动画 即通过对对象不断做图像变换(平移、缩放、旋转)产生动画效果!实现方式其实就是预先定义一组指令,这些指令指定了图形变换的类型、触发时间、持续时间。这些指令可以是以 XML 文件方式定义,也可以是以源代码方式定义。程序沿着时间线执行这些指令就可以实现动画 效果。总结:那么在Android 游... 阅读全文
posted @ 2013-08-12 18:14 brave-sailor 阅读(1026) 评论(0) 推荐(0) 编辑
摘要:简 单介绍了SurfaceView的基本使用,这次就介绍SurfaceView与多线程的混搭。SurfaceView与多线程混搭,是为了防止动画闪烁 而实现的一种多线程应用。android的多线程用法与JAVA的多线程用法完全一样,本文不做多线程方面的介绍了。直接讲解SurfaceView与多 线程的混合使用,即开一条线程专门读取图片,另外一条线程专门绘图。 本文程序运行截图如下,左边是开单个线程读取并绘图,右边是开两个线程,一个专门读取图片,一个专门绘图: 对 比一下,右边动画的帧速明显比左边的快,左右两者都没使用Thread.sleep()。为什么要开两个线程一个读一个画,而不去开两个.. 阅读全文
posted @ 2013-08-12 17:49 brave-sailor 阅读(165) 评论(0) 推荐(0) 编辑
摘要:SurfaceView类是一个用于处理Surface的视图,也是Android Api提供的另一个类。什么是Surface呢?它是一个抽象的原始缓冲区,被屏幕组合器用于渲染特定视图。屏幕组合器是Android上所有渲染的幕后推手,并最终负责将所有的像素点推送到GPU。我们的目标就是在一个独立的线程中执行渲染,而不用大量占用UI线程,因为UI线程还有很多工作要做。SurfaceView类提供了一种在UI线程之外的线程中进行渲染的方式。SurfaceHolder和锁定为了在UI线程之外的另一个不同线程中渲染到SurfaceView,我们需要获得一个SurfaceHolder类的实例,如下所示:Su 阅读全文
posted @ 2013-08-12 17:23 brave-sailor 阅读(852) 评论(0) 推荐(0) 编辑
摘要:首先我们先来看下官方API对SurfaceView的介绍SurfaceView的API介绍Provides a dedicated drawing surface embedded inside of a view hierarchy. You can control the format of this surface and, if you like, its size; the SurfaceView takes care of placing the surface at the correct location on the screenThe surface is Z ordere 阅读全文
posted @ 2013-08-12 17:22 brave-sailor 阅读(116) 评论(0) 推荐(0) 编辑
摘要:[color=#ff0000][size=18px]透明//Transparent半透明//Translucent[/size][/color]package rw.Trans;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.PixelFormat;import android.o 阅读全文
posted @ 2013-08-12 17:18 brave-sailor 阅读(639) 评论(0) 推荐(0) 编辑
摘要:一、SurfaceSurface 就是“表面”的意思。在SDK的文档中,对Surface的描述是这样的:“Handle onto a raw buffer that is being managed by the screen compositor”,翻译成中文就是“由屏幕显示内容合成器(screen compositor)所管理的原生缓冲器的句柄”,这句话包括下面两个意思:1. 通过Surface(因为Surface是句柄)就可以获得原生缓冲器以及其中的内容。就像在C语言中,可以通过一个文件的句柄,就可以获得文件的内容一样;2. 原生缓冲器(rawbuffer)是用于保存当前窗口的像素数.. 阅读全文
posted @ 2013-08-12 16:57 brave-sailor 阅读(541) 评论(0) 推荐(0) 编辑
摘要:今天学习不在布局文件中写布局而将布局文件写入到程序的Activity中去,在布局文件中去布局,当我利用LayoutInflactor新建了 CheckedTextView控件以后,然后将CheckedTextView添加入ListView中,然后使用CheckedTextView使用 setChecked将CheckedTextView设置成true或者设置成false的时候,发现无法改变CheckedTextView的选中的 状态,不能使用CheckedTextView自己带的方法去修改自身的选中状态。(CheckBox有同样的问题)。 其中Activity中添加ListView的方法代码如 阅读全文
posted @ 2013-08-12 11:39 brave-sailor 阅读(378) 评论(0) 推荐(0) 编辑
摘要:需求:单击返回键两次退出,单击一次返回键Toast提示,在其后2s内再单击一次返回键就退出。 private static Boolean isExit = false; private static Boolean hasTask = false; Timer tExit = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { isExit = false; hasTask = true; } }; @Override public boolean onKeyDown(int keyCod 阅读全文
posted @ 2013-08-12 08:52 brave-sailor 阅读(171) 评论(0) 推荐(0) 编辑

上一页 1 ··· 85 86 87 88 89
点击右上角即可分享
微信分享提示