`
liming1022
  • 浏览: 8479 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

神秘火星文特效

阅读更多

大家好,我是黎明。今天我做的是一个关于火星文的特效,供大家使用和欣赏。主要是结合了自定义控件的一些知识,希望大家能喜欢.附如下代码:

这是全屏火星文的代码:

public class HkText extends View {
	
	private char[] counts = new char[]{'A','B','C','D','E','F','G','H','J','K','L','M','N','O'};
	
	private Paint paint;
	
	private Context ctx;
	
	public HkText(Context context, AttributeSet attrs) {
		super(context, attrs);
		ctx = context;
		init();
	}

	/**
	 * 像素值
	 */
	private int textSize = 20;
	
	private void init() {
		paint = new Paint();
		paint.setAntiAlias(true);
		paint.setColor(Color.WHITE);
		paint.setTextSize(textSize);//PX值
		paint.setTextAlign(Align.LEFT);
		
		paint.setStyle(Style.FILL);
	}

//	private float sp2px(int sp){
//		TypedValue.applyDimension(
//				TypedValue.COMPLEX_UNIT_SP, sp, ctx.getResources().getDisplayMetrics());
//		
//		float px = sp *  ctx.getResources().getDisplayMetrics().scaledDensity;
//		return px;
//	}
//	
//	private float px2sp(int px){
//		float sp = px / ctx.getResources().getDisplayMetrics().scaledDensity;
//		return sp;
//	}
	
	@Override
	protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
		super.onMeasure(widthMeasureSpec, heightMeasureSpec);
		Utils.logleo("getWidth()::"+getWidth());
		Utils.logleo("getHeight()::"+getHeight());
		
		textSize = getWidth()/10;
	}
	
	public float left = 150;
	public float left_bottom = 200;
	
	private Handler handler = new Handler() {
		public void handleMessage(android.os.Message msg) {
//			int flag = msg.what;// 0 -- 10 
			
//			paint.setColor(Color.BLUE);
			invalidate();
		};
	};
	
	private int seed = 0;
	
	private int stepCount = 11;

 以下是单列火星文的代码,可以先看这个,在结合这个看上面的。

public class HkText extends View {
	
	private char[] counts = new char[]{'A','B','C','D','E','F','G','H','J','K','L','M','N','O'};
	
	private Paint paint;
	
	private Context ctx;
	
	public HkText(Context context, AttributeSet attrs) {
		super(context, attrs);
		ctx = context;
		init();
	}

	/**
	 * 像素值
	 */
	private int textSize = 20;
	
	private void init() {
		paint = new Paint();
		paint.setAntiAlias(true);
		paint.setColor(Color.WHITE);
		paint.setTextSize(textSize);//PX值
		paint.setTextAlign(Align.LEFT);
		
		paint.setStyle(Style.FILL);
	}

//	private float sp2px(int sp){
//		TypedValue.applyDimension(
//				TypedValue.COMPLEX_UNIT_SP, sp, ctx.getResources().getDisplayMetrics());
//		
//		float px = sp *  ctx.getResources().getDisplayMetrics().scaledDensity;
//		return px;
//	}
//	
//	private float px2sp(int px){
//		float sp = px / ctx.getResources().getDisplayMetrics().scaledDensity;
//		return sp;
//	}
	
	@Override
	protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
		super.onMeasure(widthMeasureSpec, heightMeasureSpec);
		Utils.logleo("getWidth()::"+getWidth());
		Utils.logleo("getHeight()::"+getHeight());
		
		textSize = getWidth()/10;
	}
	
	public float left = 150;
	public float left_bottom = 200;
	
	private Handler handler = new Handler() {
		public void handleMessage(android.os.Message msg) {
//			int flag = msg.what;// 0 -- 10 
			
//			paint.setColor(Color.BLUE);
			invalidate();
		};
	};
	
	private int seed = 0;
	
	private int stepCount = 11;
	
	
	@Override
	protected void onDraw(Canvas canvas) {

		left = 10;
		left_bottom = 400;
		for (int i = 0; i < 20; i++) {

			int seed_tem = seed;

			int alpha = 255 - (i + seed_tem) * 25;
			paint.setAlpha(alpha);// 0是没有

			canvas.drawText(counts, i % counts.length, 1, left, left_bottom,paint);

			left_bottom = (float) (left_bottom - textSize * 0.6);

		}
		seed = (seed + 1) % stepCount;
		handler.sendEmptyMessageDelayed(seed, 500);
	}

	
}

 

 

 

0
0
分享到:
评论

相关推荐

    js火星文转化,html火星文转化

    火星文,又称网络火星文,是一种在网络社交中广泛使用的非标准文字形式,它结合了汉字、拼音、符号和各种创意拼写,以达到新颖、趣味的表达效果。在IT行业中,尤其是在网页开发中,火星文的转换是一个有趣的挑战,...

    火星文输入法|火星文输入法

    火星文输入法火星文输入法火星文输入法火星文输入法

    易语言源码火星文转换源码

    本压缩包包含的“易语言源码火星文转换源码”提供了在易语言环境中实现火星文与普通汉字之间转换的功能。 源码文件“火星文转换源码.e”是易语言的工程文件,其中包含了实现火星文转换的核心代码。使用易语言打开此...

    火星文转换器-用于中文转换火星文的软件

    火星文转换器是一种专门用于将普通中文和英文文本转换为火星文格式的软件。这款工具由C#编程语言编写,体现了C#在开发用户界面友好、功能强大的应用程序方面的优势。火星文,又称非主流文字或网络用语,是互联网上...

    火星文输入法V2.4

    提供了5种皮肤(有女生专用皮肤哦)供您选择,还增加了火星文转换器、QQ签名美化、线体字转换器等多款火星文工具,以及自定义火星文、火星符号等实用功能……更多神秘功能期待您下载体验! “火星文输入法”被广泛...

    火星文输入法 v2.9.6.zip

    提供了5种皮肤(有女生专用皮肤哦)供您选择,还增加了火星文转换器、QQ签名美化、线体字转换器等多款火星文工具,以及自定义火星文、火星符号等实用功能……更多神秘功能期待您下载体验!  “火星文输入法”被...

    易语言火星文转换器

    《易语言火星文转换器》是一款专为网络流行语“火星文”进行编码与解码的软件工具。这款转换器采用易语言编程实现,旨在帮助用户理解和解析那些使用了特殊字符、拼音组合或者非标准汉字的网络语言。下面将详细探讨...

    火星文转换器 v2.0.0.9.zip

    1、火星文转换器 支持实时转换、签名美化、全面转换、快速转换、用户自定义转换。 2、输入法外挂模式 支持打字简体自动转火星文、简体转繁体、简体转异体、繁体转简体。 3、火星文翻译器 支持词汇优先、单字...

    简体汉字转换成火星文jar包

    自己写的一个简体汉字转换成火星文的jar包。

    火星文转换器.zip

    火星文,又称脑残体,是一种在网络文化中流行的语言表达方式,它利用各种特殊字符、符号、繁体字以及错别字来替代普通汉字,以此达到一种独特且趣味性的交流效果。这种语言形式在21世纪初期的互联网上特别流行,尤其...

    最新版火星文输入法!!!

    火星文输入法是一种创新的汉字输入方式,它借鉴了网络流行语、谐音字和特殊符号,创造出一种独特的网络语言风格。"最新版火星文输入法"意味着该软件已经进行了更新,可能包含了更多的词汇库、优化的算法或者改进的...

    QQ用户的新宠超炫的火星文输入法

    “火星文输入法外挂”是一款超炫的火星文即时转换软件,时下QQ用户的新宠,非主流一族的最爱!请注意,它可不是单纯的输入法软件哦,而是可以兼容所有中文输入法(例如搜狗拼音输入法、极品五笔输入法等)的外挂程序...

    火星文输入法 输入法

    火星文输入不再难 放在输入界面内 自动装换成火星文

    火星文转换器V2.0.0.9官方免费安装版

    火星文转换器能够帮助用户将普通文件转换为火星文,并支持用户自定义以及签名美化等实用功能。软件功能强大、方便实用,是火星文爱好者必备神器,需要的话可以来下载使用。  功能介绍 火星文转换器、火星文翻译器...

    火星文输入法是一款火星文即时转换软件,兼容所有中文输入法,是新新人类QQ聊天的必备工具。

    火星文输入法是一款火星文即时转换软件,兼容所有中文输入法,是新新人类QQ聊天的必备工具。

    自动聊天火星文转换程序VB源码

    【标题】"自动聊天火星文转换程序VB源码"是一个基于Visual Basic(VB)编程语言开发的软件项目,主要用于将日常语言转化为“火星文”,即网络流行的一种非标准文字或表情符号混合的语言形式,用于增加聊天的趣味性和...

    火星文转换器 junnel

    火星文转换器,junnel 火星文转换器 simigo

    火星文翻译器

    很好玩的东东,可以吧汉字翻译成火星文,算是新手练手的东东吧

    火星文转换器(朝阳版).zip

    火星文,又称网络用语或非主流文字,是网络上流行的一种特殊文字表达方式,它混合了汉字、拼音、符号以及各种创意拼写,形成了一种独特的语言风格。"火星文转换器(朝阳版)"是一个专门用于将普通中文文本转换为火星文...

    易语言源码火星文转换器源码.rar

    易语言源码火星文转换器源码.rar 易语言源码火星文转换器源码.rar 易语言源码火星文转换器源码.rar 易语言源码火星文转换器源码.rar 易语言源码火星文转换器源码.rar 易语言源码火星文转换器源码.rar

Global site tag (gtag.js) - Google Analytics