`

android 之 android.widget.RelativeLayout.LayoutParams

 
阅读更多
引用
RelativeLayout,顾名思义,就是以“相对”位置/对齐 为基础的布局方式。android.widget.RelativeLayout 有个 继承自android.view.ViewGroup.LayoutParams 的内嵌类 LayoutParams,使用这个类的实例调用 RelativeLayout.addView 就可以实现“相对布局”。


android.widget.RelativeLayout.LayoutParams 有一个构造函数:RelativeLayout.LayoutParams(int w, int h),参数指定了子 View 的宽度和高度,
这一点和其父类是一样的。
而实现相对布局的关键在它的 两个 addRule
方法上。anchor 参数指定可以是 View 的 id(“相对于谁”)、RelativeLayout.TRUE(启用某种对齐方式) 或者 是-1(应用于某些不需要 anchor 的 verb);AddRule 方法的 verb 参数指定相对的“动作”(以下常量均定义于 android.widget.RelativeLayout中,为了简便不给出其全名):

ALIGN_BOTTOM
   ALIGN_LEFT
   ALIGN_RIGHT
   ALIGN_TOP:
   本 View 的 底边/左边/右边/顶边 和 anchor 指定的 View 的 底边/左边/右边/顶边 对齐。


ALIGN_WITH_PARENT_BOTTOM
ALIGN_WITH_PARENT_LEFT
ALIGN_WITH_PARENT_RIGHT
ALIGN_WITH_PARENT_TOP : 和上面一组常量类似,
只不过不需要再指定 anchor, 其 anchor 自动为 Parent View。

CENTER_HORIZONTAL、
CENTER_IN_PARENT 、
CENTER_VERTICAL
: 如果 anchor 为 TRUE,在 Parent 中 水平居中/水平和垂直均居中/垂直居中。


POSITION_ABOVE 、
POSITION_BELOW 、
POSITION_TO_LEFT 、
POSITION_TO_RIGHT  :
本 View  位于 anchor 指定的 View 的 上边/下边/左边/右边。
分享到:
评论

相关推荐

    Android应用源码之12.RelativeLayout.zip

    Android 应用开发源码 参考与学习使用

    android布局属性RelativeLayout详解.

    android布局属性RelativeLayout详解.

    inmobi广告jar包

    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.WRAP_CONTENT); layout.addView(mAdView, params); // ...

    xlistview代码

    import android.widget.RelativeLayout; import android.widget.Scroller; import android.widget.TextView; import com.example.androidtest.R; public class XListView extends ListView implements ...

    Android代码-安卓新手引导图引导蒙层

    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); iv.setLayoutParams(params); *使用文字 TextView iv ...

    代码动态设置view或布局的宽高

    然而这时候你一定要注意强制类型转换时的LayoutParams类型,因为android中存在3种LayoutParams,即RelativeLayout.LayoutParams、LinearLayout.LayoutParams、ViewGroup.LayoutParams,那么我们改用哪一个呢?...

    IndicatorView轮播图的自定义点

    RelativeLayout.LayoutParams rl = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); rl.addRule(RelativeLayout.CENTER_HORIZONTAL); rl.addRule(RelativeLayout....

    安卓自动轮播图 广告位

    保证 ImageCycleView的 父布局是LinearLayout 否则可能会报异常,比如 java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams ...

    应用源码之12.RelativeLayout.zip

    android 源码学习. 资料部分来源于合法的互联网渠道收集和整理,供大家学习参考与交流。本人不对所涉及的版权问题或内容负法律责任。如有侵权,请通知本人删除。感谢CSDN官方提供大家交流的平台

    高仿新版58加载动画Android-shapeLoadingView.zip

     }usage布局上<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"  android:layout_height=...

    19Android-02-03-LineaLayout-relativeLayout.mp4

    19Android-02-03-LineaLayout-relativeLayout.mp4

    android 自动换行layout

    自定义自动换行LinearLayout LayoutParams使用android.widget.LinearLayout.LayoutParams

    自定义searchiew

    import android.widget.RelativeLayout; public class CommonSearchLayout extends RelativeLayout { private String hint; private Drawable left_image; private Drawable right_cancel_image; private ...

    Android应用源码之12.RelativeLayout-IT计算机-毕业设计.zip

    Android应用源码开发Demo,主要用于毕业设计学习。

    Android代码-仿iphone底部TAB标签

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@ id/main_content" android:layout_width="match_parent" android:layout_height="match_parent" android:...

    Android 仿蘑菇街列表弹出和瀑布流ScrollView+RelativeLayout实现

    layout_params = new RelativeLayout.LayoutParams(width, height); // padding是控件的内容相对控件的边缘的边距. // margin是控件边缘相对父控件,或者其他控件的边距. layout_params.setMargins(x, y, 0, 0); ...

    Android 相对布局 RelativeLayout 属性

    Android 相对布局 RelativeLayout 属性

    小程序源码 12.RelativeLayout.zip

    免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...

    android顶部滑动导航

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#F0EFF5" > ...

Global site tag (gtag.js) - Google Analytics