package org.telegram.ui.Cells; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.PorterDuff; import android.graphics.PorterDuffColorFilter; import android.graphics.RectF; import android.text.TextPaint; import android.util.TypedValue; import android.view.Gravity; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.TextView; import org.telegram.messenger.AndroidUtilities; import org.telegram.messenger.LocaleController; import org.telegram.messenger.R; import org.telegram.ui.ActionBar.Theme; import org.telegram.ui.Components.LayoutHelper; public class TooManyCommunitiesHintCell extends FrameLayout { private ImageView imageView; private TextView headerTextView; private TextView messageTextView; private FrameLayout imageLayout; public TooManyCommunitiesHintCell(Context context) { super(context); imageView = new ImageView(context); imageView.setColorFilter(new PorterDuffColorFilter(Theme.getColor(Theme.key_chats_nameMessage_threeLines), PorterDuff.Mode.MULTIPLY)); headerTextView = new TextView(context); headerTextView.setTextColor(Theme.getColor(Theme.key_chats_nameMessage_threeLines)); headerTextView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20); headerTextView.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf")); headerTextView.setGravity(Gravity.CENTER); addView(headerTextView, LayoutHelper.createFrame(LayoutHelper.MATCH_PARENT, LayoutHelper.WRAP_CONTENT, Gravity.TOP | Gravity.LEFT, 52, 75, 52, 0)); messageTextView = new TextView(context); messageTextView.setTextColor(Theme.getColor(Theme.key_chats_message)); messageTextView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 14); messageTextView.setGravity(Gravity.CENTER); addView(messageTextView, LayoutHelper.createFrame(LayoutHelper.MATCH_PARENT, LayoutHelper.WRAP_CONTENT, Gravity.TOP | Gravity.LEFT, 36, 110, 36, 0)); TextPaint textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG); textPaint.setColor(Color.WHITE); textPaint.setTextSize(AndroidUtilities.dp(12)); textPaint.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf")); Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); String s = "500"; imageLayout = new FrameLayout(context) { RectF rect = new RectF(); @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); paint.setColor(Theme.getColor(Theme.key_windowBackgroundWhiteRedText)); canvas.save(); canvas.translate(getMeasuredWidth() - textPaint.measureText(s) - AndroidUtilities.dp(8), AndroidUtilities.dpf2(7f)); rect.set(0, 0, textPaint.measureText(s), textPaint.getTextSize()); rect.inset(-AndroidUtilities.dp(6), -AndroidUtilities.dp(3)); float r = (textPaint.getTextSize()) / 2f + AndroidUtilities.dp(3); canvas.drawRoundRect(rect, r, r, paint); canvas.drawText(s, 0, textPaint.getTextSize() - AndroidUtilities.dpf2(2f), textPaint); canvas.restore(); } }; imageLayout.setWillNotDraw(false); imageLayout.addView(imageView, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER_HORIZONTAL)); addView(imageLayout, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.TOP | Gravity.CENTER_HORIZONTAL, 0, 12, 0, 6)); headerTextView.setText(LocaleController.getString("TooManyCommunities", R.string.TooManyCommunities)); imageView.setImageResource(R.drawable.groups_limit1); } public void setMessageText(String message) { messageTextView.setText(message); } }