首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Android应用开发】EasyDialog 源码解析

实现原理 实现原理 :  -- EasyDialog 效果 : 在点击后, 会从屏幕外飞入对话框, 飞入恰好能够正好处于特定 View 组件的上方 或者下方; -- 本质 : 点击按钮弹出的对话框会填充整个屏幕...屏幕填充设置 设置是否填充屏幕 :  /** * 设置是否填充屏幕,如果不填充就适应布局内容的宽度,显示内容的位置会尽量随着三角形的位置居中 */ public EasyDialog setMatchParent...: 可以看到 填充全屏, 左右只留下了 margin; -- 不填充屏幕样式 : 不会横向充满屏幕; 二....* 设置对话框所在的整个容器的布局 */ public EasyDialog setMarginLeftAndRight(int left, int right) { RelativeLayout.LayoutParams...= null) { drawableRound.setColor(color); } return this; } /** * 显示提示框 * * 这个对话框 整个填充全屏

1K20

Android ScrollView无法填充屏幕的解决办法

Android ScrollView无法填充屏幕的解决办法 ScrollView滚动视图是指当拥有很多内容、屏幕显示不完时、需要通过滚动跳来显示的视图、Scrollview的一般用法如下 以下代码在Scrollview...里面放了一个RelativeLayout、并且是设置为Android:layout_height=”match_parent“填充全屏的和RelativeLayout里面放置了一个TextView背景设为了一张图片...、按照代码理解、图片应该是居于屏幕的最下方的 <ScrollView android:layout_width="match_parent" android:layout_height="match_parent..." <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android...</ScrollView 但是最后运行的效果是这样的、你会发现图片并没有局到整个屏幕的下边、而是在上面ScrollView无法填充屏幕, ?

1.4K41
您找到你想要的搜索结果了吗?
是的
没有找到

RecyclerView的各种版本兼容问题处理集锦

另外一个办法是把sdk\extras\android\support\v7\recyclerview整个目录做为库工程,然后目标工程再引用该库工程。...2、在23.2.0之前的版本上,RecyclerView会默认充满整个屏幕下方,即使在布局文件中将其高度设置为wrap_content,循环视图依旧霸气地填充屏幕底部,导致在它后面的其它视图都显示不了了...3、当循环视图的列表项已经占满整个屏幕,此时再往顶部添加一条新记录,感觉屏幕没有发生变化,也没看到插入动画。实际上视图顶部确实有添加新记录,把列表项往下拉就能看到,只是循环视图不会自动进行下拉。...解决办法是在RecyclerView外面嵌套一层RelativeLayout,即: <RelativeLayout android:layout_width="match_parent...--中间补充RecyclerView--> 点此查看Android开发笔记的完整目录

2.6K20

【Android开发基础系列】Layout布局专题

Android GUI程序的屏幕体系结构的组织遵循以下原则:一个屏幕可以包含一个视图,视图组本身也是一个视图,视图组可以包含若干个视图。         ...,即垂直的或者水平的;         AbsoluteLayout(绝对布局):让子视图使用x/y坐标确定在屏幕上的位置;         RelativeLayout(相对布局):让子视图的位置和其他的视图相关...1.2.1 布局属性介绍 1)fill_parent         设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。...设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。...分别表示当 tab 的内容超过屏幕宽度是否支持横向水平滑动,第一 种支持滑动,第二种不支持。默认不支持水平滑动。

23420

【Android开发学习笔记之一】5大布局方式详解

Android中常用的5大布局方式有以下几种: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件。 帧布局(FrameLayout):组件从屏幕左上方布局组件。...属性值有垂直(vertical)和水平(horizontal)两种。...23 例如,在水平布局的LinearLayout中有两个Button,这两个Button的layout_weight属性值都为1, 24 那么这两个按钮都会被拉伸到整个屏幕宽度的一半...表格布局常用的属性如下: android:collapseColumns:隐藏指定的列 android:shrinkColumns:收缩指定的列以适合屏幕不会挤出屏幕 android:stretchColumns...:尽量把指定的列填充空白部分 android:layout_column:控件放在指定的列 android:layout_span:该控件所跨越的列数 简单的例子: ①效果图: ?

74380

Android精通:View与ViewGroup,LinearLayout线性布局,RelativeLayout相对布局,ListView列表组件

View是绘制在屏幕上能与用户进行交互的一个对象。而对于ViewGroup来说,则是一个用于存放其他View和ViewGroup对象的布局容器!...相对布局 FrameLayout帧布局 AbsoluteLayout绝对布局 TableLayout表格布局 GridLayout网格布局 描述一下几个重要的 线性布局: 指子控件以水平或垂直方式排列...表示填充父容器 gravity:控制组件所包含的子元素的对齐方式 layout_gravity:控制该组件在父容器里的对齐方式 background:为该组件添加一个背景图片 LinearLayout...是一个视图组,可以在一个方向垂直或者水平分布所有子项,用android:orientation属性。...用适配器可以将布局进行填充。 gridview.png ListView列表组件 ListView是一个用于显示列表的可以滚动的视图组,列表项也可以用适配器进行添加内容的。

1.8K20

android常用布局详解「建议收藏」

LinearLayout 线性布局 线性布局是按照水平或垂直的顺序将子元素(可以是控件或布局)依次按照顺序排列,每一个元素都位于前面一个元素之后。 线性布局分为两种:水平方向和垂直方向的布局。...RelativeLayout 相对布局:是一个ViewGroup以相对位置显示它的子视图(view)元素,一个视图可以指定相对于它的兄弟视图的位置(例如在给定视图的左边或者下面)或相对于 RelativeLayout...,适应性差,Android 1.5已弃用,可以用RelativeLayout替代。...TableLayout 表格布局继承自LinearLayout,通过TableRow设置行,列数由TableRow中的子控件决定,直接在TableLayout中添加子控件会占据整个一行。...layout_paddingTop android:layout_paddingBottom (3) layout_width/height 用于设置控件的高度和宽度wrap_content 内容包裹,表示这个控件的里面文字大小填充

1.8K40

Android应用开发之线性布局

Android中有六大布局,分别是: LinearLayout(线性布局) RelativeLayout(相对布局) TableLayout(表格布局) FrameLayout(帧布局) AbsoluteLayout...属性值 解释 android:width="xxxdp" 指定线性布局的容器宽度为:xxxdp android:width="wrap_content" 指定线性布局的容器宽度为:根据容器内容宽度大小来填充屏幕宽度...android:width="match_parent" 指定线性布局的容器宽度为:撑满整个屏幕宽度 height 属性值 解释 android:height="xxxdp" 指定线性布局的容器高度为...:xxxdp android:height="wrap_content" 指定线性布局的容器高度为:根据容器内容高度大小来填充屏幕高度 android:height="match_parent" 指定线性布局的容器高度为...:撑满整个屏幕高度 background 属性值 解释 android:background="#000" 指定线性布局的背景为:黑色(rgb颜色) android:background="@android

59020

Android六大布局

--前景重力--> RelativeLayout(相对布局) 相对布局(RelativeLayout)是一种根据父容器或者兄弟控件作为参照来确定控件位置的布局方式 常用属性 相对布局原文链接:https...,简单直接就可以定位,但是手机的屏幕不一样大,适配性差; 可以直接用Android:layout_x和android:layout_y来定义组件的位置(两个属性只能在绝对布局中使用,在相对布局中都不会显示的...shrinkColumns 为设置被收缩的列的序号,收缩是用于在一行中列太多或者某列的内容文本过长,会导致某列的内容会被挤出屏幕,这个属性是可以帮助某列的内容进行收缩,用于防止被挤出的。...,该布局增加了一行,并且在TableRow里每添加一个组件,便增加一列 TableLayout无法做出跨行跨列的效果,每行每列都是挨着的,就算是单元格设置Collapsed属性,如果后面有组件,也会填充上来...// GridLayout Android4.0之后新加的布局管理器 能够把整个容器划分为rows*columns的网格,每个网格可以放置一个组件 可以设置一个组件横跨多少列或者纵跨多少行 当单元格大小大于组件大小时

2.6K20

Android用户界面开发概述

 FrameLayout(帧布局): 将所有的子元素放在整个界面的左上角,后面的子元素直接覆盖前面的子元素。... GridLayout(网格布局): 是Android 4.0新增的布局管理器,把整个容器划分成为"行*列"个网格,每个网格可以放置一个组件,另外,也可以设置一个组件横跨多个列和多个行。...,int,int) 在组件的左边设置填充区域 android:paddingRight setPadding(int,int,int,int) 在组件的右边设置填充区域 android:paddingTop...setRotationY(float) 设置该组件绕Y轴旋转的角度 android:saveEnabled setSaveEnabled(boolean) 如果设置为false,那么当该组件被冻结时不会保存它的状态...安卓端屏幕大小各不相同,根据其像素密度,主要分为几种规格,如下表所示。

2.3K100

手机卫士自定义对话框布局

显示一个设置密码的对话框,如果已经设置密码了,弹出输入密码对话框 密码保存在SharedPreferences中,数据取出进行判断 自定义一个布局文件,dialog_setup_password.xml 根布局宽度不要充满屏幕...内部控件,宽度要小一点留出空间,居中对齐,android:gravity=”center” 两个并排的按钮,确定和取消,线性布局水平朝向 获取AlertDialog.Builder对象,通过new Builder...(),参数:上下文对象 调用Builder对象的setView(view)方法,参数:View对象,通过布局填充填充 调用View.inflate(context,resource,root)方法,把布局文件转换成...layout_width="290dp" android:layout_height="wrap_content" android:hint="请确认密码"/> <RelativeLayout...layout_width="wrap_content" android:layout_height="40dp" android:text="取消"/> </RelativeLayout

39710

Android之布局详解

注意:如果LinearLayout的排列方向是horizontal,内部的控件就绝对不能将宽度指定为match_parent,因为如果这样的话,单独一个控件就会将整个水平方向占满,其他的控件就没有可放置的位置了...为什么将android:layout_weight属性的值同时指定为1就会平分屏幕宽度呢?...③tablerow中的组件个数就决定了该行有多少列,而列的宽度由该列中最宽的单元格决定 ④tablerow的layout_width属性,默认是fill_parent的,我们自己设置成其他的值也不会生效...⑤整个表格布局的宽度取决于父容器的宽度(占满父容器本身) ⑥有多少行就要自己数啦,一个tablerow一行,一个单独的组件也一行!...fill_horizontal 仅水平方向上拉伸填充 clip_vertical 垂直方向上裁剪元素,仅当元素大小超过格子的空间时 clip_horizontal 水平方向上裁剪元素,仅当元素大小超过格子的空间时

1.9K10

手机卫士自定义对话框布局

显示一个设置密码的对话框,如果已经设置密码了,弹出输入密码对话框 密码保存在SharedPreferences中,数据取出进行判断 自定义一个布局文件,dialog_setup_password.xml 根布局宽度不要充满屏幕...内部控件,宽度要小一点留出空间,居中对齐,android:gravity=”center” 两个并排的按钮,确定和取消,线性布局水平朝向 获取AlertDialog.Builder对象,通过new Builder...(),参数:上下文对象 调用Builder对象的setView(view)方法,参数:View对象,通过布局填充填充 调用View.inflate(context,resource,root)方法,把布局文件转换成...layout_width="290dp" android:layout_height="wrap_content" android:hint="请确认密码"/> <RelativeLayout...layout_width="wrap_content" android:layout_height="40dp" android:text="取消"/> </RelativeLayout

61820

C#使用Xamarin开发可移植移动应用(2.Xamarin.Forms布局,本篇很长,注意)附源码

(tips:这就是我说的小麻烦) 1.StackLayout(线性布局) StackLayout以线性的方式进行水平或垂直的视图布局。 我们直接创建一个ContentPage....Center – 将控件固定在视图的中心位置 End – 将控件固定在布局中的底部位置(横向布局则为最右边) Fill – 将控件根据布局方向填充空余位置....Start – 将控件固定在布局中的顶部位置(横向布局则为最左边) 1.3填充 在上面的定位属性后面,都可以加一个后缀AndExpand,嗯..举个例子 就是这样FillAndExpand 会产生什么效果呢...它会根据屏幕的大小,和你布局中其他的内容,如果有空白位置就会由设置了AndExpand的自动填充....3.RelativeLayout(相对定位)  嗯..相对定位,顾名思义..就是相对于某个控件来进行定位..也可以是整个布局 示例代码如下:

2.2K70

未来布局之星——ConstraintLayout

添加约束 约束位置比例调整 当然如果ConstraintLayout添加约束仅仅能实现水平、垂直居中,那么它在功能上与RelativeLayout就没有差别了。...any size any size与match parent类似,都是充满整个范围,但是不同点在于match parent充满相对于父容器,而any size是相对于约束条件,即在约束条件下,...能填充的范围全部充满,如下图所示: ?...这里有一个需求,要求将两个控件合在一起,实现水平居中。如果不使用ConstraintLayout,读者们或许会想到用RelativeLayout嵌套LinearLayout来实现。...如下图所示,单击打开工具栏中Autoconnect功能按钮,将控件拖至屏幕中心,然后约束就会自动添加了,这个相信使用过墨刀设计过APP原型的读者们会感到很熟悉。 ?

1.9K20

最简单最常用的LinearLayout线性布局

良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认为RelativeLayout相对布局,而在前面的示例学习中,我们只是简单利用了一下...线性布局主要有两种形式,一种是水平线性布局,一种是垂直线性布局。需要注意的是Android的线性布局不会换行,当组件一个挨着一个地排列到头之后,剩下的组件将不会被显示出来。...就由这两个属性控制LinearLayout 的填充模型。 android:layout_width:设置LinearLayout 的宽度。...3权重 从前面的水平布局图中看到五个按钮并不是平均占据屏幕宽度,如果需要这五个组件平均占据屏幕宽度,就需要使用到权重,可以通过设置android:layout_weight为相应部件分配空间比例...-- 第三排按照给定权重比例分配整个宽度 --> <LinearLayout android:layout_width="match_parent" android

2.2K80

A021-列表容器之GridView

概述 GridView是Android的另一个列表容器,用法也跟ListView类似,它的布局是一个网格,一行可以有多个项,并且整个视图可以滚动,我们常见的应用有手机中的图库、launcher里面的应用列表...上面的运行结果就是GridView的典型效果,每个item是一张固定大小的图片,这里让它自适应屏幕填充整个屏幕的宽度。...> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width..." android:layout_centerInParent="true" android:scaleType="centerCrop" /> </RelativeLayout...1、初始化控件 2、定义图片资源mThumbIds 3、定义ImageAdapter 上面代码中我们用到了ImageLoader这个图片加载框架,使用它来加载本地drawable资源,实际开发中一般不会这样用

74930
领券