2013-04-21 68 views
1

我完全不熟悉這一點,並試圖弄清楚如何在android的佈局中實際顯示此小函數的結果。一直在搜索和搜索,我無法弄清楚它究竟需要什麼。在Android佈局中顯示結果

package com.example.proyectoparteb; 

import java.io.IOException; 
import java.io.RandomAccessFile; 
import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 

public class MainActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     readUsage(); 
    } 


    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    private float readUsage() { 
     try { 
      RandomAccessFile reader = new RandomAccessFile("/proc/stat", "r"); 
      String load = reader.readLine(); 

      String[] toks = load.split(" "); 

      long idle1 = Long.parseLong(toks[5]); 
      long cpu1 = Long.parseLong(toks[2]) + Long.parseLong(toks[3]) + Long.parseLong(toks[4]) 
        + Long.parseLong(toks[6]) + Long.parseLong(toks[7]) + Long.parseLong(toks[8]); 

      try { 
       Thread.sleep(360); 
      } catch (Exception e) {} 

      reader.seek(0); 
      load = reader.readLine(); 
      reader.close(); 

      toks = load.split(" "); 

      long idle2 = Long.parseLong(toks[5]); 
      long cpu2 = Long.parseLong(toks[2]) + Long.parseLong(toks[3]) + Long.parseLong(toks[4]) 
       + Long.parseLong(toks[6]) + Long.parseLong(toks[7]) + Long.parseLong(toks[8]); 

      return (float)(cpu2 - cpu1)/((cpu2 + idle2) - (cpu1 + idle1)); 

     } catch (IOException ex) { 
      ex.printStackTrace(); 
     } 

     return 0; 
    } 

} 
+0

您想將此「結果」顯示爲?一個textview? – RyPope 2013-04-21 18:19:11

+0

非常,是的。在文本視圖中顯示CPU使用率。 – 2013-04-21 18:26:39

+0

選擇最佳答案將激勵人們回答你未來的問題。 – RyPope 2013-04-21 18:54:04

回答

1

那麼,這是一個模糊的問題,但這裏是一個你可以做的事情的例子。

在您的main_activity.xml中的佈局中添加一個TextView或任何您命名的佈局。

將id設置爲@ + id/myTextView。

在代碼中,導入TextView的小部件:

import android.widget.TextView; 

然後在你的方法將其初始化:

TextView cpu = (TextView) findViewById(R.id.myTextView); 

並設置文本的東西:

cpu.setText(readUsage().toString()); 

有你走。與任何語言一樣,確保你玩弄東西來學習它。您可以使用eclipse圖形編輯器來添加小部件並更改文本大小和顏色等屬性。