设置TextView文字居中

android:gravity指的是控件的位置

而android:layout_gravity指的是这个layout的,是外面的

有2种方法可以设置TextView文字居中:
一:在xml文件设置:android:gravity="center"
二:在程序中设置:m_TxtTitle.setGravity(Gravity.CENTER);

备注:android:gravity和android:layout_gravity的区别在于前者对控件内部操作,后者是对整个控件操作。

例如:android:gravity="center"是对textView中文字居中
android:layout_gravity="center"是对textview控件在整个布局中居中
其实很容易理解,出现"layout"就是控件对整个布局的操作

设置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 = new LinearLayout.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);

更多相关文章

  1. android控件布局
  2. [Android]笔记7-RelativeLayout布局
  3. Android的四种基本布局
  4. 2.3.1TextView控件
  5. 【Android】如何让跑马灯跑起来-控件请求焦点
  6. Android控件GridView的使用
  7. Android 增加中文字体
  8. android 相对布局中的 控件布局
  9. Android中自定义switch控件样式

随机推荐

  1. 解决 Android(安卓)在Eclipse 开发中 Cla
  2. android设置横屏和竖屏的方法
  3. Android(安卓)使用Vitamio打造自己的万能
  4. Android不是一个商业成功的产品?
  5. Android(安卓)应用框架 —— 组件
  6. Android(安卓)Makefile分析
  7. Android大事记
  8. 如何一个android工程作为另外一个android
  9. android中移植 c/c++程序
  10. Android历史