2016-09-29 122 views
1

我嘗試點擊,我無法把它重定向推送通知 後,將焦點設置在特定選項卡上,這裏是我的代碼打開特定的標籤

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

任何一種指導會萬分感謝!

+0

你是什麼意思的特定標籤? – Nikhil

+0

@indramurari我在主屏幕上有四個選項卡,但是當我點擊push時,它應該被重定向到Chat Tab(這是第三個選項卡) – rookieDeveloper

+0

從intent發送一個標誌並在您的活動中處理它,如果您獲得特定標誌,打開特定標籤 – Nikhil

回答

2
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); 
     } 
    } 
+0

就像一個魅力 – rookieDeveloper

0

您可以從意向&用束髮一些標誌獲得該標誌在活動&設置爲tablayout像:

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

它可以解決你的問題。試試吧

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

    intent.putExtra(UtilityConstants.key, value); 

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

如果您有任何疑問,請在此留言!!