2016-08-14 9 views
1

自分自身がthis tutorialに基づいてサンプルのアンドロイドアプリを開発しようとしています。アクティビティの作成時にアンドロイドボトムバーを設定するデフォルトのタブ

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.thirdactivity); 

     BottomBar bottomBar = BottomBar.attach(this, savedInstanceState); 
     bottomBar.setItemsFromMenu(R.menu.bottom_menu, new OnMenuTabSelectedListener() { 
      @Override 
      public void onMenuItemSelected(int itemId) { 
       Intent myAct = new Intent(); 
      switch (itemId) { 
       case R.id.item1: 
        myAct = new Intent(findViewById(itemId).getContext(), mainactivity.class); 
        break; 
       case R.id.item2: 
        myAct = new Intent(findViewById(itemId).getContext(), secondactivity.class); 
        break; 
       case R.id.item3: 
        myAct = new Intent(findViewById(itemId).getContext(), thirdactivity.class); 
        break; 
      } 
       startActivity(myAct); 
      } 
     }); 
    } 

しかし、どのようにして3番目のタブをデフォルトでオンにしてアクティビティを作成できますか?上記のコードは最初のタブを強調表示しています。最初のタブをクリックしても聞こえません。また、後のタブではそれぞれのアクティビティが開きますが、ハイライトは現在のタブとして表示されません。

編集:自分でbottomBar.setDefaultTabPosition(desiredTabId);を使用することはできますが、高いメモリを使用します。修正は何ですか?

答えて

0

これは、としてstartActivity()を有することによって解決される

BottomBar bottomBar = BottomBar.attach(this, savedInstanceState); 

     bottomBar.setItemsFromMenu(R.menu.bottom_menu, new OnMenuTabSelectedListener() { 
       @Override 
       public void onMenuItemSelected(int itemId) { 
        Intent act = new Intent(); 
        if (R.id.item1 == itemId) { 
         act = new Intent(findViewById(itemId).getContext(), act1.class); 
         startActivity(act); 
         overridePendingTransition(R.anim.open_translate, R.anim.close_scale); 
        } 
        if (R.id.item2 == itemId) { 
         act = new Intent(findViewById(itemId).getContext(), act2.class); 
        } 
        if (R.id.item3 == itemId) { 
         act = new Intent(findViewById(itemId).getContext(), act3.class); 
         startActivity(act); 
         overridePendingTransition(R.anim.open_translate, R.anim.close_scale); 
        } 

       } 

      }); 
      bottomBar.setDefaultTabPosition(2); 

      bottomBar.setActiveTabColor("#F3C030"); 
関連する問題