android编程用怎么让控件的“右边”对齐在屏幕的中心?

不是控件中心对齐在屏幕的中心!是右边对齐在中心线上,控件大小为50dp.... 不是控件中心对齐在屏幕的中心!是右边对齐在中心线上,控件大小为50dp. 展开
 我来答
悦文斓月
2015-07-24 · 历史爱好者 法律顾问
悦文斓月
采纳数:505 获赞数:11896

向TA提问 私信TA
展开全部
<?xml version="1.0" encoding="utf-8"?>
<!--
android:layout_above 将该控件的底部至于给定ID的控件之上
android:layout_below 将该控件的顶部至于给定ID的控件之下
android:layout_toLeftOf 将该控件的右边缘和给定ID的控件的左边缘对齐
android:layout_toRightOf 将该控件的左边缘和给定ID的控件的右边缘对齐

android:layout_alignBaseline 该控件的baseline和给定ID的控件的baseline对齐
android:layout_alignBottom 将该控件的底部边缘与给定ID控件的底部边缘
android:layout_alignLeft 将该控件的左边缘与给定ID控件的左边缘对齐
android:layout_alignRight 将该控件的右边缘与给定ID控件的右边缘对齐
android:layout_alignTop 将给定控件的顶部边缘与给定ID控件的顶部对齐

android:alignParentBottom 如果该值为true,则将该控件的底部和父控件的底部对齐
android:layout_alignParentLeft 如果该值为true,则将该控件的左边与父控件的左边对齐
android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐
android:layout_alignParentTop 如果该值为true,则将空间的顶部与父控件的顶部对齐

android:layout_centerHorizontal 如果值为真,该控件将被至于水平方向的中央
android:layout_centerInParent 如果值为真,该控件将被至于父控件水平方向和垂直方向的中央
android:layout_centerVertical 如果值为真,该控件将被至于垂直方向的中央

android:padding和android:layout_margin 通俗的理解 Padding 为内边框,Margin 为外边框
android:padding和android:layout_margin的区别,其实概念很简单,padding是站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离。margin则是站在自己的角度描述问题,规定自己和其他(上下左右)的view之间的距离,如果同一级只有一个view,那么它的效果基本上就和padding一样了。

android:layout_gravity="center"
android:gravity 属性是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置..
android:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在linearlayout里,你想把该button放在靠左  靠右等位置就可以通过该属性设置.
幽奇猫
2013-06-29 · TA获得超过862个赞
知道小有建树答主
回答量:75
采纳率:0%
帮助的人:64万
展开全部

你既然知道这个控件宽50dp,那就好办了啊!!!

我来给你写个代码吧? 假设这个Button是你的控件!

<!-- 这是父布局 -->
<LinearLayout
    android:layout_width="fill_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="center_horizontal" >
    <!-- 这个button是你的控件 -->
    <Button
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:text="你的控件"/>
    <!-- 在你的控件后再添加一个控件,50dp宽,显示为invisible -->
    <View
        android:visibility="invisible"
        android:layout_width="50dp"
        android:layout_height="1dp"
        android:background="#00000000">
</LinearLayout>

看代码: 首先因为父布局是水平的,而且有个重要的属性:gravity="center_horizontal"。所以在你的控件后再添一个visibility="invisible"的控件,同宽50dp,就把你的控件顶到前面去了,从屏幕上看起来,就是你的控件右边处于屏幕中间了!而且是不管怎么换分辨率,都始终处于屏幕中间!

 我的代码你可以直接复制到你程序中做试验看效果的。

同为代码工人,握手握手!纯手打的代码,非复制粘贴流。欢迎追问,也谢谢采纳答案。

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yzj0457
2013-06-29 · TA获得超过762个赞
知道小有建树答主
回答量:457
采纳率:0%
帮助的人:285万
展开全部
自己用像素来控制吧
追问
不好,不同手机还要计算麻烦。
追答
额,那我这里没有好方法了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式