2013-05-07 82 views
0

我有一个活动ColorChoiceActivity,显示用户从中选择颜色首选项的广播组。我希望能够根据选择这些按钮中的哪一个来更改我的PlayGameActivity中显示的xml布局。如何根据用户偏好更改显示哪个布局?

目前我有PlayGameActivity只显示默认布局:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.battlefield_default); 
} 

我ColorChoiceActivity至今如下:

public class ColorChoiceActivity extends Activity { 

private RadioGroup radioColorGroup; 
private RadioButton radioColorButton; 
private Button saveColorBtn; 

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

    addListenerOnButton(); 
} 

public void addListenerOnButton() 
{ 
    radioColorGroup = (RadioGroup) findViewById(R.id.radioColor); 
    saveColorBtn = (Button) findViewById(R.id.saveColorBtn); 

    saveColorBtn.setOnClickListener(new OnClickListener() 
    { 
     @Override 
     public void onClick(View v){ 
      //get selected radio button from radioGroup 
      int selectedId = radioColorGroup.getCheckedRadioButtonId(); 

      //find the radiobutton by returned id 
      radioColorButton = (RadioButton) findViewById(selectedId); 

      //change battlefield layout based on selected color 
     } 
    }); 
} 


} 

我不知道如何去改变显示的布局基于ColorChoice中所选内容的PlayGameActivity。目前我有几个单独的战场布局文件,但我不知道如何根据用户选择切换内容视图。有没有办法做到这一点,或者我以错误的方式处理问题?

+0

是U呼吁单选按钮的选择PlayGameActivity的? – bakriOnFire 2013-05-07 07:14:21

+0

不,当用户在我创建的主菜单上选择Play Game按钮时,会调用PlayGameActivity。 “颜色选择”屏幕通过从我的按钮菜单中的设置 - >颜色选择进入。 – Netsuki 2013-05-07 07:16:28

回答

0

在的onClick()听者,只要记住选择的战场,然后,有条件地设置布局中使用

setContentView("your selected layout") 

上创建方法。

0

更好的选择是使用菜单,而不是RadioGroup中

public boolean onOptionsItemSelected(MenuItem item){ 
    switch (item.getItemId()) { 
      case R.id.color1: 
      break; 
      } 
    }