android:gravity / android:layout_Gravity区别:

1 android:gravity 是设置该view里面的内容相对于该view的位置,例如设置button里面的text相对于view的靠左,居中等位置。
2 
3 android:layout_gravity 是用来设置该view相对与父view 的位置,例如设置button在layout里面的相对位置:屏幕居中,水平居中等。

在实践中,发现有时会同时使用android:gravity和 android:layout_Gravity:

1 <TextView
2         android:id="@+id/text_displayed"
3         android:gravity="center"         // 设置文字在TextView的居中位置
4         android:visibility="invisible"
5         android:layout_width="fill_parent"
6         android:layout_height="wrap_content"
7         android:layout_gravity="center" // 设置TextView位置(FrameLayout):屏幕居中
8         />

Java代码中设置android:gravity是极其简单的,setGravity函数搞定了:

1 //此处相当于布局文件中的Android:gravity属性    
2 button.setGravity(Gravity.CENTER);

但设置android:layout_margin就麻烦些:

1 FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(
2            LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);
3 //此处相当于布局文件中的Android:layout_gravity属性    
4 lp.gravity = Gravity.CENTER;
5 mTextDisplayed.setLayoutParams(lp);

android:padding / android:layout_margin区别:

1 ndroid:padding 是指该view里面的内容与view边界的距离,例如TextView里面的文字离TextView控件边界的数值;
2 
3 android:layout_margin 是指该view于父view边界的距离,例如SeekBar与父view的四周边界。

 

相关文章:

  • 2021-04-19
  • 2021-08-13
  • 2021-09-02
猜你喜欢
  • 2021-05-19
  • 2021-08-02
  • 2021-06-25
  • 2022-12-23
  • 2022-02-27
  • 2022-12-23
相关资源
相似解决方案