Newer
Older
Telegram / TMessagesProj / src / main / java / org / telegram / ui / Cells / TextInfoCell.java
/*
 * This is the source code of Telegram for Android v. 3.x.x.
 * It is licensed under GNU GPL v. 2 or later.
 * You should have received a copy of the license in this archive (see LICENSE).
 *
 * Copyright Nikolai Kudashov, 2013-2017.
 */

package org.telegram.ui.Cells;

import android.content.Context;
import android.graphics.Canvas;
import android.util.TypedValue;
import android.view.Gravity;
import android.widget.FrameLayout;
import android.widget.TextView;

import org.telegram.messenger.AndroidUtilities;
import org.telegram.ui.ActionBar.Theme;
import org.telegram.ui.Components.LayoutHelper;

public class TextInfoCell extends FrameLayout {

    private TextView textView;
    private boolean needDivider;

    public TextInfoCell(Context context) {
        super(context);

        textView = new TextView(context);
        textView.setTextColor(Theme.getColor(Theme.key_windowBackgroundWhiteGrayText5));
        textView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 13);
        textView.setGravity(Gravity.CENTER);
        textView.setPadding(0, AndroidUtilities.dp(19), 0, AndroidUtilities.dp(19));
        addView(textView, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER, 17, 0, 17, 0));
    }

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(MeasureSpec.makeMeasureSpec(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.EXACTLY), MeasureSpec
                .makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
    }

    public void setText(String text) {
        textView.setText(text);
    }

    public void setTextSize(float size) {
        textView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, size);
    }

    public void setTextColor(int color) {
        textView.setTextColor(color);
    }

    //“退出登录”按钮设置
    public void setDivider(boolean divider) {
        textView.setPadding(0, AndroidUtilities.dp(25), 0, AndroidUtilities.dp(25));
        needDivider = divider;
        setWillNotDraw(!divider);

    }

    @Override
    protected void onDraw(Canvas canvas) {
        if (needDivider) {
            canvas.drawRect(getPaddingLeft(), 0, getWidth() - getPaddingRight(), 30, Theme.dividerPaint);
            canvas.drawRect(getPaddingLeft(), getHeight() - 30, getWidth() - getPaddingRight(), getHeight(), Theme.dividerPaint);
        }
    }
}