setGravity после setMeasuredDimension не работает
Я создал класс customTextView extent TextView
и я поставил textAlignment
в центр. В onMeasure
Я изменил textview
ширина.
После того, как это текстовое представление выровняйте, измените налево, и я использовал this.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);
но это не изменилось к центру
2 ответа
Как это?
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
ImageView imageView = (ImageView)((Activity) context).findViewById(R.id.list_r);
int imageViewHeight = imageView.getMeasuredWidth();
int parentWidth = MeasureSpec.getSize(widthMeasureSpec);
int parentHeight = MeasureSpec.getSize(heightMeasureSpec);
int final_width = parentWidth - 2*imageViewHeight;
this.setMeasuredDimension(final_width, parentHeight);
Runnable runnable = new Runnable() {
public void run() {
view.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);
}
};
Handler handler = new Handler();
handler.postDelayed(runnable,1000);
}
Добавьте ниже код в вашем классе.
Runnable runnable = new Runnable() {
public void run() {
view.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);
}
};
Handler handler = new Handler();
handler.postDelayed(runnable,1000);