一、發(fā)送廣播
public class RegisterFragment extends Fragment {
? ??????????@Override
????????????public ViewonCreateView(LayoutInflater inflater, ViewGroup container,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Bundle savedInstanceState)? {
? ??????????????????????// 發(fā)送廣播,跳轉(zhuǎn)到登錄頁面
????????????????????????getActivity().sendBroadcast(new Intent("com.login"));
????????????}
}
二、廣播注冊(cè),接受廣播
public class LoginActivity extends AppCompatActivity {
? ??????????@Override
????????????protected void onCreate(Bundle savedInstanceState) {
????????????????????????super.onCreate(savedInstanceState);
? ????????????????????? setContentView(R.layout.activity_login);
? ? ????????????????????//注冊(cè)廣播
? ????????????????????? MyReceiver myReceiver =new MyReceiver();
????????????????????? ? IntentFilter intentFilter =new IntentFilter();
? ? ????????????????????intentFilter.addAction("com.login");
? ? ????????????????????registerReceiver(myReceiver,intentFilter);
????????????}
????????class MyReceiver extends BroadcastReceiver {
????????????????@Override
? ? ????????????public void onReceive(Context context, Intent intent) {
????????????????????????if(intent.getAction() =="com.login"){
????????????????????????????????vpId.setCurrentItem(1);
? ? ? ? ????????????????}
????????????????}
????????}
}
actiity頁面跳轉(zhuǎn)fragment:
在一個(gè)activity中:
Intent intent = new Intent();
intent.setClassName("com.pac","com.pac.activity.MainActivity");
intent.putExtra("flag","one");
startActivity(intent);
在MainActivity中:
String flag = getIntent().getStringExtra("flag");
if(flag.equals("")){
? ? if(flag.equals("one")){
? ? ? ? viewpager.setCurrentItem(1);
????}
}