当前位置:首页 > 嵌入式 > 嵌入式软件
[导读] 如果运行时,可以看到滚动条由条慢慢变短,则说明程序成功了。截图如下,建议选择大点的文件做测试。2. [图片] 2.jpg3. [代码]main.xml布局文件 0

 如果运行时,可以看到滚动条由条慢慢变短,则说明程序成功了。截图如下,建议选择大点的文件做测试。

2. [图片] 2.jpg

3. [代码]main.xml布局文件

01 <?xml version="1.0" encoding="utf-8"?>
02 <ScrollView
03 xmlns:Android="http://schemas.android.com/apk/res/android"
04 Android:layout_height="wrap_content" android:id="@+id/scrollView1"android:layout_width="fill_parent">
05     <LinearLayout Android:id="@+id/linearLayout1"
06     Android:orientation="vertical"   
07     Android:layout_width="fill_parent"
08     Android:layout_height="wrap_content">
09 <TextView 
10 Android:id="@+id/tv"
11     Android:layout_width="fill_parent"
12     Android:layout_height="wrap_content"   
13     />
14     </LinearLayout>
15 </ScrollView>

4. [代码]FileRead.java

01 public class FileRead {
02 boolean readend=false;
03 List<String> al=null;
04 public  class ReadNodesThread extends Thread{//读取线程
05  
06 public void run()
07 {
08 al=new ArrayList<String>(100);
09 al.clear();
10 readend=false;
11 int i=0;
12 try {
13 RandomAccessFile raf=new RandomAccessFile("/sdcard/test.txt","r");
14 //try {
15 while(raf.getFilePointer()<raf.length())
16 {
17 al.add(raf.readLine());
18 //sleep(100);//如果测试文件太小,这里休眠是为了测试,
19 }
20  
21 catch (Exception e1) {
22 // TODO Auto-generated catch block
23 e1.printStackTrace();
24 }
25 readend=true;
26 }
27 };
28 }

5. [代码]MultiThreadActivity.java

01 public class MultiThreadActivity extends Activity {
02 FileRead fr=null;
03 Handler mHandler=null;
04 int curi=0;
05 Runnable updateui=null;
06 String[] tmp=null;
07 String s="";
08 TextView tv=null;
09 class ReadListener extends Thread{//监听线程,当数据更新数目大于10条时,更新UI
10  
11 public void run()
12 {
13 int i=0,newi=0;
14 while(!fr.readend)
15 {
16 newi=fr.al.size();
17 if((newi-i)>10)//新增数据大于10条,更新UI
18 {
19 i=newi;
20 tmp=(String[])fr.al.toArray(new String[fr.al.size()]);
21 mHandler.post(updateui);
22 try {
23 Thread.sleep(100);
24 catch (InterruptedException e) {
25 // TODO Auto-generated catch block
26 e.printStackTrace();
27 }
28 }
29 }
30 //数据读完了
31 tmp=(String[])fr.al.toArray(new String[fr.al.size()]);
32 mHandler.post(updateui);
33 try {
34 Thread.sleep(100);
35 catch (InterruptedException e) {
36 // TODO Auto-generated catch block
37 e.printStackTrace();
38 }
39 }
40 };
41 @Override
42 public void onCreate(Bundle savedInstanceState) {
43 super.onCreate(savedInstanceState);
44 setContentView(R.layout.main);
45 tv=(TextView)findViewById(R.id.tv);
46 fr=new FileRead();
47 ReadNodesThread readThread=fr.new ReadNodesThread();
48 updateui=new Runnable()//更新UI的线程
49 {
50 @Override
51 public void run() {
52 // TODO Auto-generated method stub
53  
54 int i=0;
55  
56 for(i=curi;i<tmp.length;i++)
57 {
58 s+=tmp[i]+"n";
59 }
60 tv.setText(s);
61 curi=i;
62 }};
63 readThread.start();
64 ReadListener updateThread=new ReadListener();
65 mHandler=new Handler();
66 updateThread.start();
67 }
68 }
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

罗德与施瓦茨与SmartViser携手开发了一种用于测试符合欧盟销售的智能手机和平板电脑的新Energy Efficiency Index(EEI)标签法规的解决方案。该解决方案的核心是R&S CMX500,这是...

关键字: 智能手机 Android iOS

广州2023年8月29日 /美通社/ --  8月28日,保健食品行业迎来新规,国家市场监管总局正式发布《保健食品新功能及产品技术评价实施细则(试行)》(简称《实施...

关键字: UI BSP JOURNAL 检测方法

(全球TMT2023年8月24日讯)2023年8月23日,时值实时3D引擎Unity在华设立合资公司Unity中国一周年之际,Unity中国正式推出Unity中国版引擎——团结引擎。Unity全球CEO John Ri...

关键字: UNITY CE Android 开发者

报告显示:全球电商 App 获客花费接近50亿美元 北京2023年8月23日 /美通社/ -- 全球营销衡量与体验管理平台 AppsFlyer 近日发布《2023 电商 App 营销现状报告》。尽管面临全球经...

关键字: APPS BSP iOS Android

数字机顶盒是一种数字技术下的多媒体娱乐中心,可以实现电视节目接收、播放、存储、网络应用等多种功能。随着科技的发展,数字机顶盒的设计方案也在不断进步和优化。本文将介绍数字机顶盒设计的几种实现方案。

关键字: 数字机顶盒 Android Linux

21ic 近日获悉,原小米 9 号创始员工李明在社交媒体平台公布了旗下首款产品乐天派桌面机器人,为全球首款 Android 桌面机器人,面向极客和发烧友的 AI + 机器人。据悉,李明两个月前宣布创业并进军 AI 领域,...

关键字: 小米 Android 桌面机器人 AI

尽管安装增长放缓,全球游戏 App 获客花费仍高达 267 亿美元 经济低迷导致 2023 游戏 App 营销优先考虑收入指标,用户增长次之 北京2023年3月9日 /美通社/ -- 今天,全球营销衡量与体验管理平台...

关键字: APPS iOS Android BSP

量子计算领域的新里程碑,来了! 谷歌科学家证明,通过增加量子比特的数量,就能降低量子计算的错误率。

关键字: 谷歌 Android Windows

EFFISAYIL™ 2临床试验显示,佩索利单抗能显著预防泛发性脓疱型银屑病(GPP)发作长达48周1,2 该研究结果建立在EFFISAYIL™ 1临床试验数据基础之上,EFFISAYIL™ 1临床试验表明使...

关键字: GP UI

「卫星通讯」正在被普及到每一台智能手机当中。普及的动机并非是消费市场的一个刚需,其实更像是将差异化的功能「抹平」成一个标配。时下,支持「卫星通讯」功能的智能手机只有苹果的 iPhone 14 系列与华为的 Mate 50...

关键字: 卫星通讯 Android 智能手机 iPhone
关闭
关闭