我有两项 Activity 。第一个 Activity 具有不同的布局,可打开另一个 Activity 。在另一个 Activity 中,我有一组分段的单选按钮,我想根据在第一个 Activity 中单击的布局将其设置为选中。为了检查单选按钮,我使用了这个。
segmented5.check(R.id.pickupbakButton);
这将按钮设置为选中,但我希望从另一个 Activity 中检查它,因为我在布局中进行了其他更改。
我们可以说 PICKUPBOX/BLIND VAN 的 onClick
它应该显示选中的皮卡/盲车单选按钮。
我怎样才能实现这个目标?
GoBoxActivity
public class GoBoxActivity extends AppCompatActivity {
private Intent i;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_go_box);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setTitle("GO-BOX");
setSupportActionBar(toolbar);
toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_24dp);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
final GoBoxPickupActivity gobox = new GoBoxPickupActivity();
LinearLayout pickupBak = (LinearLayout)findViewById(R.id.PickupBak);
LinearLayout picupBox = (LinearLayout)findViewById(R.id.pickupbox);
LinearLayout engkelBak = (LinearLayout)findViewById(R.id.engkelBak);
LinearLayout engkelBox = (LinearLayout)findViewById(R.id.engkelBox);
pickupBak.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
i=new Intent(getApplicationContext(),GoBoxPickupActivity.class);
startActivity(i);
}
});
picupBox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
i=new Intent(getApplicationContext(),GoBoxPickupActivity.class);
startActivity(i);
}
});
engkelBak.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
i=new Intent(getApplicationContext(),GoBoxPickupActivity.class);
startActivity(i);
}
});
engkelBox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
i=new Intent(getApplicationContext(),GoBoxPickupActivity.class);
startActivity(i);
}
});
}
}
PickupBoxActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_go_box_pickup);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
segmented5 = (SegmentedGroup) findViewById(R.id.segmented3);
segmented5.setOnCheckedChangeListener(this);
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.pickupbakButton:
engkelTextview.setVisibility(View.GONE);
extraEngkelTextView.setVisibility(View.GONE);
airConditioning.setVisibility(View.GONE);
picBoxTextview.setVisibility(View.VISIBLE);
extraPickBoxTextview.setVisibility(View.VISIBLE);
return;
case R.id.pickupboxButton:
engkelTextview.setVisibility(View.GONE);
extraEngkelTextView.setVisibility(View.GONE);
airConditioning.setVisibility(View.VISIBLE);
picBoxTextview.setVisibility(View.VISIBLE);
extraPickBoxTextview.setVisibility(View.VISIBLE);
return;
case R.id.engkelbakButton:
picBoxTextview.setVisibility(View.GONE);
extraPickBoxTextview.setVisibility(View.GONE);
engkelTextview.setVisibility(View.VISIBLE);
extraEngkelTextView.setVisibility(View.VISIBLE);
airConditioning.setVisibility(View.INVISIBLE);
return;
case R.id.engkelboxButton:
picBoxTextview.setVisibility(View.GONE);
extraPickBoxTextview.setVisibility(View.GONE);
engkelTextview.setVisibility(View.VISIBLE);
extraEngkelTextView.setVisibility(View.VISIBLE);
airConditioning.setVisibility(View.VISIBLE);
return;
default:
engkelTextview.setVisibility(View.GONE);
extraEngkelTextView.setVisibility(View.GONE);
airConditioning.setVisibility(View.GONE);
picBoxTextview.setVisibility(View.VISIBLE);
extraPickBoxTextview.setVisibility(View.VISIBLE);
}
}
}
最佳答案
修改GoBoxActivity中onClick内的代码,如下
i=new Intent(getApplicationContext(),GoBoxPickupActivity.class);
i.putExtra("selected", 1);
startActivity(i);
在 PickupBoxActivity 中,执行类似的操作
int selected = getIntent().getIntExtra("selected",1);
之后
switch(selected)
{
case 1:
segmented5.check(R.id.pickupbakButton);
break;
case 2:
.... So on
}
如有任何问题,请进一步了解..
关于java - 如何设置从另一个 Activity 检查的单选按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34333618/