2014-05-18 39 views
1

使用eclipse創建我的第一個遊戲程序。我的問題是。有沒有可能設置一個按鈕,而不使用XML?設置不使用XML佈局的按鈕

在聲明2個setcontentviews時遇到問題。該按鈕實際上並未出現在遊戲中。有人能幫助我嗎?

public class Game extends Activity { 
Maze maze; 
public void onCreate(Bundle savedInstanceState) { 

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  
    WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    super.onCreate(savedInstanceState); 
    Intent intent = getIntent(); 
    Bundle extras = intent.getExtras(); 
    this.maze = (Maze)getLastNonConfigurationInstance(); 
    if(this.maze == null) { 
     this.maze = (Maze)extras.get("maze"); 
    } 
    GameView view = new GameView(this); 
    view.setMaze(this.maze); 

    Button myButton = new Button(this); 
    myButton.setText("Press me"); 
    myButton.setBackgroundColor(Color.YELLOW); 

     RelativeLayout myLayout = new RelativeLayout(this); 

     RelativeLayout.LayoutParams buttonParams = 
       new RelativeLayout.LayoutParams(
        RelativeLayout.LayoutParams.WRAP_CONTENT, 
        RelativeLayout.LayoutParams.WRAP_CONTENT); 

     buttonParams.addRule(RelativeLayout.CENTER_HORIZONTAL); 
     buttonParams.addRule(RelativeLayout.CENTER_VERTICAL); 

     myLayout.addView(myButton, buttonParams); 

     setContentView(myLayout); 
    setContentView(view); 
}  
} 
+0

http://www.techotopia.com/index.php/Creating_an_Android_User_Interface_in_Java_Code – user184994

+0

感謝@ user184994 – icecream

+0

沒有probs。如果您有任何更多(特定)問題,請編輯此問題。 – user184994

回答

0
Button button = new Button(this) ; 
    button.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 

    } 

    }) ; 

OR

ViewGroup vg = new RelativeLayout(this) ; 
    ImageView iv = new ImageView(this) ; 
    vg.addView(iv); 
    RelativeLayout.LayoutParams params = new   RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT) ; 
    vg.setLayoutParams(params); 
    setContentView(vg) ; 

希望這是你問 作爲替代使用XML。

+0

請看以上編輯 – icecream

0

Yes按鈕可以顯示不使用XML,併爲此做以下的事情

  1. 創建活動,並覆蓋onCreate方法
  2. 使按鈕 Button按鈕=新的Button實例(」按代碼按鈕「);

    3.and set view by setContentView(button);

+0

的問題是否可以有2個setcontentview? – icecream

+0

是2 setcontentview可以使用但最新的一個被使用 例如: setContentView(button1) ................. .......... ...... 的setContentView(BUTTON2) 然後BUTTON2顯示 如果你需要兩個按鈕 然後把兩個按鈕中的LinearLayout ,然後顯示的LinearLayout 的setContentView(LinearLayout中) – tizbn

+0

我有編碼的一個問題鈕釦。請幫忙 – icecream