我有三个按钮:按钮1,按钮2和按钮提交。所有这些按钮都在同一个活动中。这个概念是, 当我点击按钮1然后按下提交按钮,然后片段1打开。当我点击按钮2并按下按钮提交然后片段2打开时,方式相同。请帮我解决这个概念。
提前致谢。
答案 0 :(得分:1)
想法很简单。
全局范围变量 int flag;
点击button1 make flag = 1。
如果你点击了botton2 make flag = 2。
然后在提交的onclick上,检查flag的值。
如果flag = 1则转到fragment1,否则转到flagment2。
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
flag=1;
}
});
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
flag=2;
}
});
submitbutton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(flag==1){
//go to fragment1
} else{
//go to fragment2}
}
});
答案 1 :(得分:0)
int flag=0;
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
flag = 1;
}
});
for button2 set flag=2 and so on...
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (flag == 1) {
Intent intent=new Intent(MainActivity.this,FragmentsActivity.class);
intent.putExtra("fragment_id","1");
startActivity(intent);
} else if (flag == 2) {
Intent intent=new Intent(MainActivity.this,FragmentsActivity.class);
intent.putExtra("fragment_id","2");
startActivity(intent);
}
//so on....
}
});
// On your FragmentActivity
Intent intent=getIntent();
String fragment_id=intent.getStringExtra("fragment_id");
//set this fragment_id to the viewpager of your fragments..
viewPager.setCurrentItem(Integer.parseInt(string));