日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Android設置重復文字水印背景的方法_Android

作者:小北的博客 ? 更新時間: 2022-08-21 編程語言

本文實例為大家分享了Android設置重復文字水印背景的具體代碼,供大家參考,具體內容如下

效果如圖:

自定義Drawable :

/**
?* Created by Owen Chan
?* On 2017-07-05.
?*/

public class WaterMarkBg extends Drawable {

? ? private Paint paint = new Paint();

? ? private String logo = "SoYoung";

? ? public WaterMarkBg(String logo) {
? ? ? ? this.logo = logo;
? ? }

? ? @Override
? ? public void draw(@NonNull Canvas canvas) {


? ? ? ? int width = getBounds().right;
? ? ? ? int height = getBounds().bottom;

? ? ? ? canvas.drawColor(Color.parseColor("#F3F5F9"));
? ? ? ? paint.setColor(Color.parseColor("#AEAEAE"));
? ? ? ? paint.setAntiAlias(true);
? ? ? ? paint.setTextSize(30);
? ? ? ? canvas.save();
? ? ? ? canvas.rotate(-30);
? ? ? ? float textWidth = paint.measureText(logo);
? ? ? ? int index = 0;
? ? ? ? for (int positionY = height / 10; positionY <= height; positionY += height / 10) {
? ? ? ? ? ? float fromX = -width + (index++ % 2) * textWidth;
? ? ? ? ? ? for (float positionX = fromX; positionX < width; positionX += textWidth * 2) {
? ? ? ? ? ? ? ? canvas.drawText(logo, positionX, positionY, paint);
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? canvas.restore();
? ? }

? ? @Override
? ? public void setAlpha(@IntRange(from = 0, to = 255) int alpha) {

? ? }

? ? @Override
? ? public void setColorFilter(@Nullable ColorFilter colorFilter) {

? ? }

? ? @Override
? ? public int getOpacity() {
? ? ? ? return PixelFormat.UNKNOWN;
? ? }
}

代碼中的設置:

public class MainActivity extends AppCompatActivity {

? ? @Override
? ? protected void onCreate(Bundle savedInstanceState) {
? ? ? ? super.onCreate(savedInstanceState);
? ? ? ? setContentView(R.layout.activity_main);
? ? ? ? findViewById(R.id.text).setBackground(new WaterMarkBg("Owen Chan"));
? ? }
}

原文鏈接:https://blog.csdn.net/owenchan1987/article/details/74422747

欄目分類
最近更新