我有一个MainActivity,我使用android.support.design.widget.TabLayout作为Viewpager的tabview。
现在,如果我正在进行其他活动,如果我想进入MainActivity的第3个标签,请参加此活动,如何实现此目标。
提前致谢。
答案 0 :(得分:0)
您可以使用某种值返回第一个acticity,这表示您需要转到第三个标签 在创建时,您将检查值是否在意图getextra中 如果是 - 去第三个 别的 - 继续常规
答案 1 :(得分:0)
您可以在创建活动之前将其放入并在第二个活动中获取它。
答案 2 :(得分:0)
执行以下操作。
初始化tabLayout后,在MainActivity
方法的onCreate
上写下代码
int index = getIntent().getIntExtra("SelectedIndex",0);
tabLayoutObject.getTabAt(index).select();
从您想要重定向到MainActivity
的地方写下
Intent intent = new Intent(this,MainActivity.class);
intent.putExtra("SelectedIndex",2) //what ever the index is
startActivity(intent);
希望这适合你
答案 3 :(得分:0)
转到SecondActivity时必须使用startActivityForResult()。
当您使用startActivityForResult时,您可以使用setResult()在firstActivity中获取通知;
在FirstActivity中:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode == RESULT_OK){
if(requestCode == 0){
if(data!=null && data.getExtras()!=null){
final int position = data.getIntExtra("key_position",-1);
if(position !=-1){
tabLayout.getTabAt(position).select();
}
}
}
}
}
在SecondActivity中:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
final Intent intent = new Intent();
intent.putExtra("key_position",3);
setResult(RESULT_OK,intent);
finish();
}
});
它会帮助你。