2013-05-20 24 views
0

我正試圖在屏幕上添加一個按鈕,但我似乎無法使其工作。 這是我的代碼:Ecplise - Android添加一個帶有代碼的按鈕

public class Graph extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    Bundle values = getIntent().getExtras(); 
    float value1 = values.getFloat("value1"); 
    float value2 = values.getFloat("value2"); 
    float value3 = values.getFloat("value3"); 
    float value4 = values.getFloat("value4"); 
    float value5 = values.getFloat("value5"); 
    System.out.println(values); 
    setContentView(new GraphView(this, value1, value2, value3, value4, value5)); 
    // I guess it´s here I add my button? 
} 

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

我不知道,因爲我使用此代碼

 setContentView(new GraphView(this, value1, value2, value3, value4, value5)); 

謝謝您的幫助,我能如何添加一個按鈕。

+0

按鈕b = new Button(this);將該按鈕添加到您的佈局。 – Raghunandan

+0

可能重複的[用參數以編程方式添加按鈕](http://stackoverflow.com/questions/8698650/add-button-programmatically-with-parameters) –

回答

0

首先你需要定義你想添加按鈕的位置。如果你想把它添加到波紋管你的GraphView然後像這樣做

LinearLayout ll = new LinearLayout(this); 
ll.addView(new GraphView(this, value1, value2, value3, value4, value5); 
Button button = new Button(this); 
button.setText("Button text"); 
ll.addView(button); 
setContentView(ll); 

希望這可以幫助和享受您的工作。

+0

我沒有得到任何錯誤,但我不能看到我的按鈕,有什麼方法可以說出它應該出現在哪裏? –

+0

如果我刪除線「ll.addView(新GraphView(this,value1,value2,value3,value4,value5);」 我可以看到按鈕-_- 所以我想我必須改變GraphView的東西,所以它請不要佔用屏幕上的所有空間? –

+0

我將「LinearLayout」更改爲「RelativeLayout」,它工作正常。 –

0

你試過嗎?

Button myButton = new Button(yourActivity.this); 
myButton.setText("Click"); 

RelativeLayout ll = (RelativeLayout)findViewById(R.id.yourlayout); 
LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); 
ll.addView(myButton, lp); 
+0

在我得到「新的按鈕(this)」的錯誤之前,但它現在似乎工作。但現在的新問題是,我無法在「R.Id.layout」 –

+0

中找到任何佈局,即佈局是您的父​​級佈局id。檢查您的主要xml佈局文件以獲取父佈局的標識(它將是一個相對佈局或線性佈局)。 –

+0

它是一個RelativeLayout,但我似乎無法找到任何ID