博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类似于抽奖活动的小程序
阅读量:4691 次
发布时间:2019-06-09

本文共 2330 字,大约阅读时间需要 7 分钟。

import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Random;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.animation.Animation;import android.view.animation.AnimationSet;import android.view.animation.ScaleAnimation;import android.widget.TextView;public class MainActivity extends Activity {	private TextView mTv;	private ArrayList
nameList; private Random r; private String rname = null; int i = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mTv = (TextView) this.findViewById(R.id.tv_showname); nameList = new ArrayList
(); readData(); } private void readData() { // 直接从文件里拿到全部人名字,放到集合里 // 随机为集合长度,那个随机所以人名字显示到mTv try { InputStream is = this.getAssets().open("name.txt"); BufferedReader br = new BufferedReader(new InputStreamReader(is, "utf-8")); String line = null; while ((line = br.readLine()) != null) { nameList.add(line);// 遍历每一行的名字放入List集合 } } catch (Exception e) { e.printStackTrace(); } } public void rName(View view) { final int size = nameList.size(); r = new Random(); new Thread() { public void run() { // 得到一个随机索引 for (i =0; i < 4; i++) { try { Thread.sleep(300); int index = r.nextInt(size); rname = nameList.get(index); runOnUiThread(new Runnable() { @Override public void run() { // 显示 mTv.setText(rname); if (i == 4) { showAnim(); } } }); } catch (InterruptedException e) { e.printStackTrace(); } } }; }.start(); } /** * 显示缩放动画 */ private void showAnim(){ AnimationSet set = new AnimationSet(false); ScaleAnimation anim = new ScaleAnimation(0, 4, 0,4, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); anim.setDuration(1000); ScaleAnimation anim1 = new ScaleAnimation(4, 0, 4, 0, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); anim1.setDuration(1000); set.addAnimation(anim); set.addAnimation(anim1); mTv.startAnimation(set); }}

 

 

在assets文件下创建name.text

效果:

转载于:https://www.cnblogs.com/loaderman/p/6479458.html

你可能感兴趣的文章
Error和Exception
查看>>
Python和Singleton (单件)模式[转载]
查看>>
hibernate多对多单向(双向)关系映射
查看>>
二分查找题
查看>>
httpclient设置proxy与proxyselector
查看>>
python 文件单行循环读取的坑(一个程序中,文件默认只能按行循环读取一次,即使写到另一个循环里,它也只读取一次)...
查看>>
IT常用单词
查看>>
拓扑排序
查看>>
NYOJ--32--SEARCH--组合数
查看>>
day07
查看>>
【Android开发:自定义控件系列二】关于PopupWindow的注意点
查看>>
HTML——使用表格进行页面布局
查看>>
字符串统计 连续的某个字符的数量 1.1.4
查看>>
JMS
查看>>
gulpfile 压缩模板
查看>>
JAVA知多少
查看>>
Kruskal算法(转)
查看>>
CSS3 Media Queries实现响应式布局
查看>>
【34.14%】【BZOJ 3110】 [Zjoi2013]K大数查询
查看>>
【 henuacm2016级暑期训练-动态规划专题 A 】Cards
查看>>