GridView基于组件的网络格所有的形式的组分的,例如:当制作专辑,所有的图片将在相同的尺寸在不同的显示格在孩子,是否能够依靠这个组件完成.此组件的继承结构参见例如下面: java.lang.Object    ↳ android.view.View      ↳ android.view.ViewGroup        ↳ android.widget.AdapterView<T extends android.widget.Adapter>          ↳ android.wid…
我们用android经常使用的时候,手机的声音增大和缩小操作.在设定场景模式,它往往使用静音和振动运行,这通常是AudioManager来控制的. 今天我们就来看一下AudioManager 的使用. 首先要想操作声音必须取得这个服务.在前面我们学过取得系统服务的方法 AudioManager audio = (AudioManager) super.getSystemService(Context.AUDIO_SERVICE); 然后用这个类中的方法来操作声音组件.接下来用样例进行说明 xml…
GridView(网格视图) 概述 GridView用于在界面上按行.列分布的方式来显示多个组件         GridView和ListView有共同的父类 : AbsListView         区别:ListView只显示一列,而GridView可以显示多列         GridView也需要通过Adapter来提供显示的数据 XML属性 android:columnWidth setColumnWidth(int) 设置列的宽度 android:gravity setGravi…
GridView网格视图 GridView网格视图是按照行,列分布的方式来显示多个组件,通常用于显示图片或是图标等,在使用网格视图时,首先需要要在屏幕上添加GridView组件. 常用属性: 1. android:columnWidth 用于设置列的宽度 2. android:gravity 用于设置对齐方式 3. android:horizontalSpacing 用于设置各元素之间的水平间距 4. android:numColumns 用于设置列数 5. android:stretchMod…
Android项目实战(二十八):使用Zxing实现二维码及优化实例 作者:听着music睡 字体:[增加 减小] 类型:转载 时间:2016-11-21我要评论 这篇文章主要介绍了Android项目实战(二十八):使用Zxing实现二维码及优化实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 前言: 多年之前接触过zxing实现二维码,没想到今日项目中再此使用竟然使用的还是zxing,百度之,竟是如此牛的玩意. 当然,项目中我们也许只会用到二维码的扫描和生成两个功能,所以不必下载完整的…
Android项目实战(二十八):Zxing二维码实现及优化   前言: 多年之前接触过zxing实现二维码,没想到今日项目中再此使用竟然使用的还是zxing,百度之,竟是如此牛的玩意. 当然,项目中我们也许只会用到二维码的扫描和生成两个功能,所以不必下载完整的jar包,使用简化版的即可,下文可见. 这篇文章讲述:1.如果快速在项目中集成zxing,实现扫描和生成二维码功能 2.根据项目需求去修改源码实现我们的要求并进行优化 一.快速集成zxing二维码 1.下载库文件 : http://dow…
activity_ui6.xml <?xml version="1.0" encoding="utf-8"?> <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"…
         GridView用于在界面上按行.列分布显示多个组件.GridView和ListView有共同父类:AbsListView. GridView与ListView的差别在于:ListView仅仅在一个方向上分布,GridView在两个方向上分布.所以使用GridView时一般都指定numColumns大于1,否则该属性默认值为1.就意味着改GridView仅仅有一列,那就变成了ListView GridView的xml属性 android:strtchMode 的值为: wate…
ExpandableListView简介 ExpandableListView是ListView的子类,用法和ListView类似,ExpandableListView可以创建几个类别,每个类别下面又包括几个条目,实现了二级目录. 注意 因为他的数据组织是二级目录,所以数据提供者也是有特殊的. 必须是ExpandableListAdapter的子类. ExpandableListView的属性 ExpandableListView的实例 package peng.liu.testview; im…
上下文菜单ContextMenu使用案例 前言 回顾之前的应用程序,发现之前创建的选项菜单无法显示了.按照正常逻辑来说,左图中在"商品信息"一栏中应该存在选项菜单,用户可进行分享等操作,但是现在此操作莫名其妙的消失了.写了个测试Demo,如中图所示,一切按照逻辑显示正常.怪就怪在项目中无法显示,起初设想是因为Android系统版本太高问题,但是在别的手机上测试之后发现问题依旧存在.难道是因为顶部Tab标题栏遮挡住了选项菜单的显示?继续测试,通过在别的没有Tab标题栏的页面测试选项菜单,…
在一般的图形渲染用户通常只需要重写onDraw()该方法可以是.但是假设,才能真正完成绘图操作.此外,我们需要掌握的四大核心经营类: android.graphics.Bitmap:主要表示的是一个图片的存储空间.所包括的图片能够来自于文件或由程序创建: android.graphics.Paint:基本的画图工具类,能够指定画图的样式: android.graphics.Canvas:是一个操作画图以及Bitmap的平台,相当于提供了一个画板的功能,在onDraw()方法的參数中也定义了此类型…
文章提示可以很好的帮助用户输入信息,以方便.在Android它也设置有类似特征,而要实现这个功能需要依靠android.widget.AutoCompleteTextView完毕,此类的继承结构例如以下: java.lang.Object    ↳ android.view.View      ↳ android.widget.TextView        ↳ android.widget.EditText          ↳ android.widget.AutoCompleteTextV…
SeekBar扩展自ProgressBar——在ProgressBar的基础上添加了一个用户可以拖拽的thum. SeekBar.OnSeekBarChangeListener是接收SeekBar进度改变的监听器. SeekBar的使用方法类似于ProgressBar,今天主要通过自定义SeekBar的样式来学习SeekBar.自定义SeekBar样式有一点与ProgressBar不同——自定义部分需要两部分android:progressDrawable="@drawable/seek_bar…
拖动条能够由用户自己进行手工的调节,比如:当用户须要调整播放器音量或者是电影的播放进度时都会使用到拖动条,SeekBar类的定义结构例如以下所看到的: java.lang.Object    ↳ android.view.View      ↳ android.widget.ProgressBar        ↳ android.widget.AbsSeekBar          ↳ android.widget.SeekBar 经常用法 public SeekBar(Context con…
TabHost主要特点是能够在一个窗体中显示多组标签栏的内容,在Android系统之中每一个标签栏就称为一个Tab.而包括这多个标签栏的容器就将其称为TabHost.TabHost类的继承结构例如以下所看到的: java.lang.Object    ↳ android.view.View      ↳ android.view.ViewGroup        ↳ android.widget.FrameLayout          ↳ android.widget.TabHost  经常用…
  分类: Android高手进阶 Android基础教程 2012-09-14 18:10 29759人阅读 评论(35) 收藏 举报 android相册layoutobjectclassloaderencoding 大家好,相信大家用的ListView控件一定很多的,是竖向滑动的,复用convertView,我们可以加载成千上万的数据,但有时候我们会有 这个需求比如相册,我们想横向滑动,并且数据有好多,这时候ViewPager控件就派上用场了,ViewPager使用时候我们需要导入第三方包…
概述 日常使用别家的APP过程中,会遇到一些比较好看的布局,这时候我们就想学习一下别人的布局结构,以便参考. (1)手机连接电脑.设置手机为USB调试模式 参考<[Android Studio安装部署系列]七.真机运行项目> (2)运行Android Studio,打开 Tools--Android--Android Device Monitor 注意:android Studio3.1开始只能通过命令行的方式启动Android Device Monitor. 双击sdk安装目录/tools/…
前言: 多年之前接触过zxing实现二维码,没想到今日项目中再此使用竟然使用的还是zxing,百度之,竟是如此牛的玩意. 当然,项目中我们也许只会用到二维码的扫描和生成两个功能,所以不必下载完整的jar包,使用简化版的即可,下文可见. 这篇文章讲述:1.如果快速在项目中集成zxing,实现扫描和生成二维码功能 2.根据项目需求去修改源码实现我们的要求并进行优化 一.快速集成zxing二维码 1.下载库文件 : http://download.csdn.NET/detail/u013210620/…
去掉标题栏的方法 第一种:也一般入门的时候经常使用的一种方法requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏注意这句一定要写在setContentView()方法的前面,不然会报错的 第二种:在AndroidManifest.xml文件中定义<application android:icon="@drawable/icon" android:label="@string/app_name" androi…
Surface&Canvas Canvas为在画布的意思.Android上层的作图几乎都通过Canvas实例来完成,其实Canvas更多是一种接口的包装.drawPaints ,drawPoints,drawRect,drawBitmap …                    jj.jpg (5.64 KB, 下载次数: 0) 下载附件  保存到相册 2012-3-22 13:02 上传   1 Canvas与Surface之间本质关系 对于本节,我们不去研究Skia图形引擎本身,我们需要了…
大部分手机上边都会有一个"MENU"键,在一个应用安装到手机上之后,能够通过"MENU"显示该应用关联的菜单. 可是,从Android 3.0開始,Android不再要求手机设备上必须提供MENU案件,尽管如今还有非常多手机都会提供MENU按键,可是有一部分已经不再提供.在这样的情况下,Android推荐使用ActionBar来取代菜单.在以后的博文中我们会介绍Android对ActionBar的支持 Menu接口是实现这个功能的按键之中的一个,当中SubMenu继…
一.介绍视图是一张虚拟表,其内容由查询定义,同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数据值集形式存在.行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成.(视图不是真实存在磁盘上的) 二.视图与表的区别1.表需要占用磁盘空间,视图不需要2.视图不能添加索引(所以查询速度略微慢点)3.使用视图可以简化,复杂查询4.视图的使用利于提高安全性比如:不同用户查看不同视图 三.创建/修改视图1.创建视图create view 视图名 as sel…
之前本专栏文章中的小案例有写到:第三十九话<Chronometer实现倒计时> 以及使用异步实现倒计时:第三十三话< AsyncTask异步倒计时> 本篇文章 结合Timer.TimerTask和Handler来实现相同的功能. 下面介绍一下Handler及其主要用法: 在android中提供了一种异步回调机制Handler,利用它我们可以在完成任务后做出相应的通知. handler基本使用: 在主线程中,使用handler很简单,new一个Handler对象然后实现其handle…
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53966818 前言:一年半多以前,我们曾有个项目,要做一个截屏功能,当时负责调研的同事,答应了产品上这个功能,但开发一周后,发现,无法实现截取手机屏幕图像,须要root权限,才能做.因为最近研究MediaProjection,意外的发现,竟然无须root,可以轻松实现次功能.曾经被做不到的,如今做到了,很难相信此时的心情.看下今天…
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53866405 前言:上篇中,介绍是用MediaMuxer与MediaExtractor进入音视频的裁剪,今天用MediaMuxer与AudioRecord与MediaCodec及Surface进行屏幕录制成gif.看下Agenda: 效果图 主体思路 转gif两种方案 MediaMuxer是用于将音频和视频进行混合生成多媒体文件.…
上一篇小案例,完成了一个普通的通知,点击通知启动了一个活动.但是那里的通知没有加入些"靓点",这一篇就给它加入自定义的布局,完成自定义的通知. 应用:比如QQ音乐为例,当点击音乐播放的时候,手机屏幕上方就会展示播放音乐的通知,这个通知不仅仅拥有布局,而且响应点击事件,能完成上一曲下一曲的切换.今天这个小案例,就以此为背景展开. 首先,主活动布局不需要改变,还是放置两个按钮用于开启.关闭服务. 主活动中的代码做了了较大改变,如下: package com.example.notifica…
上一章介绍MediaCodec中创建到start过程(到jni部分),从今天开始,将深入源码中看看其c++过程,看下Agenda如下: mediacodec.h CreateByType initMediaCodec中BufferInfo内部类: configure过程 start BufferInfo在MediaCodec.h中对应是一个结构体 //create by 逆流的鱼yuiop on 2016/12/11 //blog地址:http://blog.csdn.net/hejjunlin…
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53183718 前言:前面几节都是介绍Camera2相关,对于Camera2预览把图像显示在SurfaceView上,还有录像时,时时刷新当前图像区域.追溯到最早介绍的MediaPlayer播放视频,这些都离不开重要角色MediaCodec,今天介绍MediaCodec,看下Agenda: MediaCodec是什么? codec操…
ToggleButton 和Switch简介 ToggleButton 和Switch都是继承了Button,所以他们的属性设置和Button差不多. 分别支持的属性 ToggleButton 的属性: Switch的属性: analogColok和DigitalColok简介 digitalColok继承了text,但是它的setText方法不能使用,能够显示精确到秒,作为数字的表,analogColok则是继承了View,进行了几何的重绘,不能显示秒. analogColok和Digital…
AutoComplicatedTextView简介 AutoComplicatedTextView是从EditText派生出来的,可以使用EditText的所有的属性.当用户输入一定的内容后,会有提示,选中后自动填充.顺便介绍一下MultiAutoComplicatedTextView,和上面的用法基本相似,只是可以输入多个提示项,然后用分隔符隔开,用setTokenize()设置分隔符. 属性介绍 代码 package peng.liu.testview; import android.app…