我正在自学编写一个 Android 应用程序。我使用以下代码为我的应用程序成功选择了不同的数据库:
public void manageDB()
{
setContentView(R.layout.dbmanager);
ScrollView ll = (ScrollView) findViewById(R.id.lstDb);
final RadioGroup rg = new RadioGroup(this);
rg.setLayoutParams(new RadioGroup.LayoutParams(RadioGroup.LayoutParams.FILL_PARENT, RadioGroup.LayoutParams.WRAP_CONTENT));
rg.setOrientation(RadioGroup.VERTICAL);
for (int i=0; i < mDBList.items.size(); i++)
{
RadioButton rb = new RadioButton(this);
rb.setId(VIEW_RADIO_ID + i);
rb.setText(mDBList.items.get(i).dictionaryName);
rb.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
rg.addView(rb,i);
if (mDBFile != null && mDBFile.fileName.equals(mDBList.items.get(i).fileName))
{
rg.check(VIEW_RADIO_ID + i);
}
}
ll.addView(rg);
Button btnOk = (Button) findViewById(R.id.btnOk);
btnOk.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
setContentView(R.layout.main);
int selectedIndex = rg.getCheckedRadioButtonId();
if (selectedIndex < 0)
{
selectedIndex = 0;
}
mDBFile = mDBList.items.get(selectedIndex - VIEW_RADIO_ID);
savePreferences();
setContentView(R.layout.main);
menuMain();
}
});
}
使用此代码,我可以单击单选按钮选择数据库,然后单击 OK 按钮确认并返回主屏幕。现在我想在主屏幕上分配一个按钮来执行此任务,这样我在选择数据库时就不必离开主屏幕。
由于我有两个数据库,理想情况下我想要一个双向按钮来完成这项任务。我的意思是当我单击按钮时,选择了 db_1。当再次单击该按钮时,将选择 db_2,反之亦然。
我不知道如何调整这段代码来满足我的这个要求。我想知道你们是否可以给我一点帮助。非常感谢您提前。