今天主要对android tabwidget进行了研究,但是一开始调整高度和文字居中始终不满意。
如果不加图片显示效果如图但是这样给人感觉很不好
感觉太不融洽了。然后就对TabWidget处理
处理如下:
TabWidget tabWidget = tabHost.getTabWidget();
for (int i = 0; i < tabWidget.getChildCount(); i++) {
View child = tabWidget.getChildAt(i);
final TextView tv = (TextView)child.findViewById(android.R.id.title);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) tv.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 0); //取消文字底边对齐
params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //设置文字居中对齐
}
但是这样高度不协调,然后需要调整高度,再更改代码
TabWidget tabWidget = tabHost.getTabWidget();
for (int i = 0; i < tabWidget.getChildCount(); i++) {
View child = tabWidget.getChildAt(i);
final TextView tv = (TextView)child.findViewById(android.R.id.title);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) tv.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 0); //取消文字底边对齐
params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //设置文字居中对齐
child.getLayoutParams().height = 30;
// final ImageView iv = (ImageView)child
// .findViewById(android.R.id.icon);
// iv.getLayoutParams().height = 0;
}
再看显示效果
最后就达到我们想要得效果,大功告成!