2011-12-02 83 views
2

我設計了一個代碼,用於將android移動設備上的文件發送到PC。代碼運行得非常好,但是在執行完整個代碼後會出現活動屏幕顯示的問題。執行整個代碼後顯示活動屏幕

我想添加按鈕來暫停或停止傳輸。但是,即使在整個傳輸完成後顯示按鈕。 我也嘗試過使用setContentView()後的睡眠,但這並不能解決我的問題。

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    status=(TextView)findViewById(R.id.status); 
     int x; 
DatagramSocket s = new DatagramSocket(2436); 

     FileInputStream fis = new FileInputStream("//sdcard//output.3gp"); 
     while(true) 
     { 
      b2=new byte[100]; 
      x=fis.read(b2); 

      if(x<=0) 
      { 
       b2=new byte[10]; 
       p3=new DatagramPacket(b2,b2.length,client_ip,client_port); 
       s.send(p3); 
       break; 
      } 
      else 
      { 
       p3=new DatagramPacket(b2,b2.length,client_ip,client_port); 
       s.send(p3); 
       //status.append(b2[0]+" "+p3.getLength()); 
      } 

     } 

     fis.close(); 

回答

4

做你的文件處理任務的線程/在OnStart方法super.onStart稱爲

+0

1 - 其實,我在我的文件處理代碼做一些佈局的變化也因此使得一個新的線程也無濟於事(因爲我們不能修改一個線程主要佈局)。 2 - 我試圖在onStart()寫代碼,這也沒有幫助! – gauravsapiens

+1

可以使用處理器從線程 –

+0

準確更新UI,謝謝! – gauravsapiens