我写了下面的函数来创建文本视图。但是有些文本完全不可见所以我得到引力到center_horizontal | center | vertical但是它没有工作。我的下面的图像是在DATE& OUT DATE完全不可见。所以我想将所有文本设置为居中垂直和居中水平
protected TextView createDefaultTabView(Context context) {
TextView textView = new TextView(context);
textView.setGravity(Gravity.CENTER_VERTICAL|Gravity.CENTER_HORIZONTAL);
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
textView.setTypeface(Typeface.DEFAULT_BOLD);
//textView.setPadding(0,0,0,25);
textView.setLayoutParams(new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
[![enter image description here][1]][1] TypedValue outValue = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground,
outValue, true);
textView.setBackgroundResource(outValue.resourceId);
textView.setAllCaps(true);
int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
textView.setPadding(padding, padding, padding, padding + 10);
return textView;
}
答案 0 :(得分:2)
您的TextView's
高度设置为WRAP_CONTENT
,因此它的内部Gravity
对其垂直定位没有影响(因为没有额外的界限来定位)。
如果要将其垂直对齐,则需要将TextView's
PARENT引力设置为CENTER_VERTICAL
,或将TextView的高度设置为MATCH_PARENT
。
其中任何一个都会给你你想要的效果。