在我们平时的开发过程中,可以说图片展示是每个App必备的,所以我们会用到ImageView图片控件,对于每个Android开发者来说,这已经非常熟悉了,那有童鞋就会问了:这还有什么好讲的呢?...之前我也并没有在意这个属性的使用,以为只会在面试的时候才需要用到,事实是我错了,在最近的开发过程中,使用了大量的图片展示商品的图片,而且不同的模块,图片的展示还需要不一样,那么这个时候ScaleType...当我们设置ImageView的ScaleType属性时,开发工具中会弹出以下的选项让你选择: [ncb4i8yyr5.png] 首先我们设置ImageView控件填充整个屏幕: ImageView...[tk23tz7rn3.png] (2).当原图的size大于ImageView的size时,就按照比例缩小原图的宽高,居中显示在ImageView中....:scaleType=“fit_xy” 把图片按照指定的大小在ImageView中显示,拉伸显示图片,不保持原比例,填满ImageView
--定义一个GridView组件--> GridView android:id="@+id/grid01" android:layout_width="match_parent...--定义一个ImageView组件--> ImageView android:id="@+id/image_view" android:layout_width... 然后是点击事件的设置: 其中arry_list只有一个ImageView放图片 代码下面给出 public class MainActivity extends Activity...{ private GridView gridView; //定义字符串数组作为提示的文本 private ImageView imageView; private...= (GridView) findViewById(R.id.grid01); //为gridview设置adapter gridView.setAdapter(simpleAdapter
" /> 这里使用的是 GridView 标签,网格视图 GridView 的扩展关系如下所示: => android.view.View => android.view.ViewGroup...> android.widget.GridView 本例中使用的 android:numColumns 、android:columnWidth、android:horizontalSpacing 和...android:verticalSpacing类是 GridView 的特定属性,分别表示了列的数目,列的宽度,水平间距和竖直间距,本例中的android:numColumns设置为"auto_fit"...在本示例程序中,在布局文件中定义了 GridView,在 Java 代码中设置一个 BaseAdapter 作为 GridView 中的数据。...[] mThumbIds = { // 图片的 id 数组 } 这里是使用一系列的图片,作为 GridView 中的内容。
就是上图中包括整个图片项个各个部分,这里我们使用gridView(表格布局)来实现 2.整个界面里需要注意的是 “重复的部分”,就是 各个图片项和,图片下方显示的文字了。那么我们需要描述这个部分。.../apk/res/android"> ImageView android:id="@+id/imageView_ItemImage" android:layout_width="wrap_content...TextView> 这里使用了一个相对布局,在TextView 里使用属性android:layout_below="@+id/imageView_ItemImage..." 指示了文本在图片的下方。...()); } 先构建ArrayList作为数据源,在构建SimpleAdapter 作为数据适配器,为gridView指定适配器对象。
下面说一下自己的思路: 1.获取网络图片 2.初始化gridview,自定义适配器 3.根据图片数量设置gridview的列数 4.更新适配器 下面贴上部分源码并给大家解析一下 一、首先是GridView...三、最后在用到的Activity中设置 noScrollgridview = (GridView) findViewById(R.id.noScrollgridview); noScrollgridview.setNumColumns...GridView的列数为3,根据图片的数量动态设置列数。...ImgeView的scaleType的属性如果设置FitXY就会充满方形布局,如果center就会居中显示 详细说一下吧: 1)center:保持原图的大小,显示在ImageView的中心。...ImageView的上部分位置 8)fitXY:把原图按照指定的大小在View中显示,拉伸显示图片,不保持原比例,填满ImageView. ok就先这样了,以后我会经常更新博客和大家分享的
splash界面的细节 ctrl + O 搜索 在去标题的时候,对话框主题被去掉了,有点丑,现在既要有新版本的对话框又不显示标题 把清单文件中activity节点的主题去掉 进入到application...对象的setCancelable(false),强制升级的时候 或者设置取消监听器 两种上下文的区别 当显示对话框的时候,如果使用getApplicationContext()来得到上下文,此时报错 BadTokenException...,和activity一致,用的多一点 getApplicationContext()生命周期长一点,和应用一致 应用程序的主界面 九宫格的布局,使用GridView/>布局 GridView和ListView...是两兄弟,设置三列 , android:numColumns=”3” 设置内部条目垂直的距离,android.verticalSpacing=”10dp” 获取GridView对象 调用GridView...; import android.widget.GridView; import android.widget.ImageView; import android.widget.TextView; public
Android系统自带一个GridView和Gallery两个控件,GridView网格显示,Gallery单个浏览,两者结合起来可以真正实现Gallery浏览图片效果。...== 5) { space = dm.heightPixels / imageCol - 6; imageView.setLayoutParams(new GridView.LayoutParams...(new GridView.LayoutParams( space, space)); } imageView.setAdjustViewBounds(true); imageView.setScaleType...[position]); return imageView; } } 然后,用GridImageAdapter填充GridView gridView = (GridView) findViewById...); gridView.setOnItemClickListener(listener); // 设置点击监听事件 最后,设置GridView控件的点击监听事件 AdapterView.OnItemClickListener
先看一下效果: 不知道为什么,整成gif的横线就没有了,在模拟器上也看不到,真机上是没有问题的,纠结死小编了 image.png image.png 首先我们来看看GridView的一些常用的属性吧...1.android:numColumns=”auto_fit” //GridView的列数设置为自动 2.android:columnWidth=”90dp ” //每列的宽度,也就是Item的宽度...=”true” //设置为true就可以实现滚动条的自动隐藏和显示 10.android:fastScrollEnabled=”true” //GridView出现快速滚动的按钮(至少滚动4页才会显示...要想实现这种功能我们要设置imageview的 android:clickable=”true”,看一下布局文件: ImageView...="true"> ImageView> 2.然后我们在自定义adapter中定义一个改变按钮图片的颜色方法,通过初始化adapter的时候,将九宫格的图片传过来,通过
来通知主线程 然后是subGroupOfImage()方法,改方法是将mGruopMap的数据组装到List中,在List中存放GridView中的每个item的数据对象ImageBean, 遍历HashMap...对象,具体的逻辑看代码,之后就是给GridView设置Adapter。...的宽和高了 但是我们想在getView()中获取ImageView的宽和高存在问题,在getView()里面刚开始显示item的时候利用ImageView.getWidth() 获取的都是0,为什么刚开始获取不到宽和高呢...onLayout(), onDraw()等操作,这时候才能获取到Item的宽和高,于是我想到了自定义ImageView,在onMeasure()中利用回调的模式主动通知我ImageView测量的宽和高...,可以在getView()中获取Item中某个控件的宽和高。
重要的是,background是底层的图片资源,src是覆盖在background上面的资源,他们可以叠加使用,实现选中的效果。...) 它支持属性android:scaleType setScaleType(ImageView.ScaleType) matrix(ImageView.ScaleType.MATRIX):使用matrix...使用该组件很简单,只要为它设置一个Adapter,该Adapter封装了AutoCompleteTextView预设的提示文本 //创建一个ArrayAdapter,封装数组 ArrayAdapter...在界面中定义TabHost组件,并为该组件定义该选项卡的内容 B. Activity应该继承TabActivity C....) 使用GridView一般指定numColumn大于1,否则取默认值为1.那么GridView就变成了ListView 属性android:stretchMode支持如下属性 none 不拉伸 spacingWidth
GridView是一个网络布局的视图,他能让你的元素显示在一个个的格子里。我们的桌面就是一个GridView。。 新建一个HelloGridView的工程 修改main.xml代码如下: 很简单,就是一个GridView。设置列宽为90dp,这样当我们的numColumns设置为auto_fit时,Android就会自动计算我们手机屏幕的大小以决定每一行展示几个元素。...android:horizontalSpacing定义列之间的间隔,android:verticalSpacing定义行之间的间隔。...android:stretchMode设置为columnWidth是意味着根据列宽自动缩放。...,显示在GridView里 ImageView imageView; if(convertView==null){ imageView=new ImageView(mContext
概述 GridView是Android的另一个列表容器,用法也跟ListView类似,它的布局是一个网格,一行可以有多个项,并且整个视图可以滚动,我们常见的应用有手机中的图库、launcher里面的应用列表...:gravity="center"/> 相关属性解析: 1.android:numColumns=”auto_fit” //GridView的列数设置为自动 2.android...; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView;...itemImg; } } } 在Activity中我们做了以下几件事: 1、初始化控件 2、定义图片资源mThumbIds 3、定义ImageAdapter 上面代码中我们用到了...,我们可能还需要添加每一项的点击事件,这时需要设置它的监听事件,与ListView设置监听事件一样,这里不赘述,代码中使用到的图片来自官方,可以参考以下地址http://developer.android.com
主要的核心算法使用了Android中提供的LruCache类,这个类是3.1版本中提供的,如果你是在更早的Android版本中开发,则需要导入android-support-v4的jar包。..." android:layout_centerInParent="true" /> 在每一个子View中我们就简单使用了一个ImageView...首先从LruCache中取出图片的缓存,设置到ImageView上。如果LruCache中没有该图片的缓存, * 就给ImageView设置一张默认图片。...然后在getView()方法中,我们为每个ImageView设置了一个唯一的Tag,这个Tag的作用是为了后面能够准确地找回这个ImageView,不然异步加载图片会出现乱序的情况。...之后调用了setImageView()方法为ImageView设置一张图片,这个方法首先会从LruCache缓存中查找是否已经缓存了这张图片,如果成功找到则将缓存中的图片显示在ImageView上,否则就显示一张默认的空图片
其实,在真正的项目实战当中如果仅仅是使用硬盘缓存的话,程序是有明显短板的。而如果只使用内存缓存的话,程序当然也会有很大的缺陷。...在 Android照片墙应用实现,再多的图片也不怕崩溃 这篇文章当中,我编写了一个照片墙的应用程序,但当时只是单纯使用到了内存缓存而已,而今天我们就对这个例子进行扩展,制作一个完整版的照片墙。..." > GridView> 很简单,只是在LinearLayout中写了一个GridView而已。...接着我们要定义GridView中每一个子View的布局,新建一个photo_layout.xml布局,加入如下代码: android="http://schemas.android.com...接着在getView()方法中,我们为每个ImageView设置了一个唯一的Tag,这个Tag的作用是为了后面能够准确地找回这个ImageView,不然异步加载图片会出现乱序的情况。
ListView的常用属性: android:lsitSelector:设置列表项被点击时的背景色。 android:scrollingCache:如果设为true,在滚动时会使用绘制缓存。...GridView常用属性: android:columnWidth:设置列的宽度。 android:numColumns:设置列数。...:textColor="#000000" /> 这里的item中只需显示行文本即可。...因为我在布局文件中已经自定义了标题栏,所以需要把系统自带的标题栏隐藏。... 定义完还需在AndroidManifest.xml中的application标签中引用: android:theme
使用ViewAnimator 时可以指定如下常见XML属性。 android:animateFirstView:设置ViewAnimator显示第一个View组件时是否使用动画。...android:inAnimation:设置ViewAnimator显示组件时所使用的动画。 android:outAnimation:设置ViewAnimator隐藏组件时所使用的动画。...在实际项目中往往会使用ViewAnimator的几个子类。...继续使用WidgetSample工程的advancedviewsample模块,在app/main/res/layout/目录下创建viewswitcher_layout.xml文件,在其中填充如下代码片段...> 创建GridView中每个Item的布局文件slide_gridview_item.xml,代码如下: <?
其实,在真正的项目实战当中如果仅仅是使用硬盘缓存的话,程序是有明显短板的。而如果只使用内存缓存的话,程序当然也会有很大的缺陷。...在 Android照片墙应用实现,再多的图片也不怕崩溃 这篇文章当中,我编写了一个照片墙的应用程序,但当时只是单纯使用到了内存缓存而已,而今天我们就对这个例子进行扩展,制作一个完整版的照片墙。...="@dimen/image_thumbnail_spacing" > GridView> 很简单,只是在LinearLayout中写了一个GridView...此方法会在LruCache中检查所有屏幕中可见的ImageView的Bitmap对象, * 如果发现任何一个ImageView的Bitmap对象不在缓存中,就会开启异步线程去下载图片。...接着在getView()方法中,我们为每个ImageView设置了一个唯一的Tag,这个Tag的作用是为了后面能够准确地找回这个ImageView,不然异步加载图片会出现乱序的情况。
在Android开发中,我们常常用到ListView和GridView,而有的时候系统的ListView,GridView并不能满足我们的需求,所以我们需要自己定义一个ListView或者GridView...GridView的控件,GridView主要是来显示网格的控件,在Android的开发中使用很普通,相对于TextView,Button这些控件来说要来的复杂些,今天给大家带来长按GridView的item...,其实告诉大家,只要知道了思路就感觉一点都不复杂了,不信大家可以接着往下看看,首先还是跟大家说说实现的思路 根据手指按下的X,Y坐标来获取我们在GridView上面点击的item 手指按下的时候使用Handler... import android.widget.AdapterView; import android.widget.GridView; import android.widget.ImageView...修改版源码,点击下载 再次声明, 在修改版的源码中还存在一点小BUG,不过已解决,正如28楼所说的一样,是因为我在MainActivity的onChange()方法中调用了mDragAdapter.setItemHide
ImageSwitcher是viewSwitcher的子类,所以ImageSwitcher继承了ViewSwitcher素有的特性 2.作为ViewSwitcher的子类,它比ViewSwitcher使用更加方便...3.中重要的是:ImageSwitcher增加了图片切换动画,使得图片的切换更加自然 这里看下运行效果: 这个例子中,看考了疯狂Android讲义,采用ImageSwicher结合Gridview实现的...对象 ImageView imageView = new ImageView(MainActivity.this); imageView.setScaleType...gridView = (GridView) findViewById(R.id.grid01); //为gridView设置adapter gridView.setAdapter...罢了,注意设置它的 id 要与活动中调用它的地方相同,这里就不过多描述了。
你可以设置该text 相对于view的靠左,靠右等位置. android:layout_gravity是用来设置该view相对与父view 的位置.比如一个button 在linearlayout里,你想把该...即android:gravity用于设置View中内容相对于View组件的对齐方式,而android:layout_gravity用于设置View组件相对于Container的对齐方式。...下面回到正题, 我们可以通过设置android:gravity=”center”来让EditText中的文字在EditText组件中居中显示;同时我们设置EditText的android:layout_gravity...=”right”来让EditText组件在LinearLayout中居右显示。...另外,要设置在RelativeLayout中的位置时使用addRule方法,如下: params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT
领取专属 10元无门槛券
手把手带您无忧上云