从待定意向打开特定选项卡

Open specific tab from Pending Intent

我试图在点击推送通知后将焦点设置在特定选项卡上 我无法重定向它,这是我的代码

 Intent intent_chat=new Intent(this, HomeChatFragment.class);
 pendingIntent=PendingIntent.getActivity(this,0,intent_chat,PendingIntent.FLAG_UPDATE_CURRENT);

任何形式的指导都会很棒,谢谢!

Intent intent_chat=new Intent(this, HomeChatFragment.class);
intent.putExtra("someFlag", 2); //tab position to open
pendingIntent=PendingIntent.getActivity(this,0,intent_chat,PendingIntent.FLAG_UPDATE_CURRENT);

并在您的 HomeChatFragment.java 中执行此操作:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ...
        ...
        int i;
        if(getIntent() != null) {
            i = getIntent().getIntExtra("someFlag", -1);
       }
       if(i != -1) {
           yourViewPager.setCurrentItem(i);
       }
   }

您可以从 intent 中发送一些标志并使用 bundle 在 activity 中获取该标志并设置为 tablayout 就像:

    selectionTab = bundle.getInt("selectionTab");
    tabLayout.getTabAt(selectionTab).select();                
tabLayout.getTabAt(selectionTab).getCustomView().setSelected(true);

可以解决您的问题。试试吧

    Intent intent = new Intent(this, MainActivity.class);

    intent.putExtra(UtilityConstants.key, value);

    PendingIntent contentIntent = PendingIntent.getActivity(this, _id,
            intent, PendingIntent.FLAG_CANCEL_CURRENT);

如果您有任何疑问,请在此处评论!!