现在的位置: 首页 > 综合 > 正文

水平居中和垂直居中

2017年12月12日 ⁄ 综合 ⁄ 共 1174字 ⁄ 字号 评论关闭

设置TextView文字居中一般使用如下:
android:layout_width="fill_parent"              注意这里声明要为match_parent
android:layout_height="fill_parent"
android:gravity="center"

代码实现android:layout_gravity

通过查看SDK,发现有一个setGravity方法, 顾名思义, 这个应该就是用来设置Button组件中文字的对齐方式的方法了。

仔细找了一圈,没有发现setLayoutgravity方法,有点失望。 不过想想也对,如果这边有了这个方法,将Button放在不支持Layout_Gravity属性的Container中如何是好!

代码比较简单,但是发现它们还是花了我一点时间的


Button button  = new Button(this);  button.setText("One");  //此处相当于布局文件中的Android:layout_gravity属性  LinearLayout.LayoutParams
lp = newLinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);  lp.gravity = Gravity.RIGHT;  button.setLayoutParams(lp);  //此处相当于布局文件中的Android:gravity属性  button.setGravity(Gravity.CENTER); 
  LinearLayout linear 
new LinearLayout(this);  //注意,对于LinearLayout布局来说,设置横向还是纵向是必须的!否则就看不到效果了。  linear.setOrientation(LinearLayout.VERTICAL);  linear.addView(button);  setContentView(linear); 
 



另外,要设置在RelativeLayout中的位置时使用addRule方法,如下:

params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);  params.addRule(RelativeLayout.CENTER_IN_PARENT);  mContainer.addView(progress,params);

textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);

抱歉!评论已关闭.