2016-08-12 16 views
0

私はアンドロイドアプリを開発中で、以下のようなレイアウトを作成したいと考えています。アイコンとテキストでタブを作成する方法TabLayout android

enter image description here

私は水平方向にスクロールされます。このレイアウトに示すように、タブは、同じようにしたいです。これらのタブに反応とテキストのアイコンを設定したいと思います。アイコンは、私が表示する必要があるサーバーイメージですが、どのようにアイコンのタブにサーバーのURLイメージを表示することはできません。

TabLayoutまたはSliding TabLayout以外のレイアウトを作成する他の方法はありますか?UIとイメージを同じにすることはできますか?

これを行う方法が分かっている場合は、助けてください。

+0

あなたがこの回答を参照することができますhttp://stackoverflow.com/questions/37650128/unable-to-change-the-tab-icons-while-using-fragmentstatepageradapter/37650323#37650323 –

答えて

1

ViewPagerアダプタ

public class ViewPagerAdapter extends FragmentPagerAdapter { 
private static int NUM_ITEMS = 2; 
private Context mContext; 
private String[] tabText; 



public ViewPagerAdapter(FragmentManager fragmentManager, Context context) { 
    super(fragmentManager); 
    this.mContext = context; 
    this.tabText = new String[]{ 
      "First tab", 
      "second tab" 
    }; 



} 

@Override 
public Fragment getItem(int position) { 
    switch (position) { 
     case 0: 
      return new FirstFragment(); 
     case 1: 
      return new SecondFragment(); 
     default: 
      return null; 
    } 
} 

@Override 
public int getCount() { 
    return NUM_ITEMS; 
} 

    @Override 
    public CharSequence getPageTitle(int position) { 
    return tabText[position]; 
} 

}

のように、その目的のためのライブラリを使用することができます

MainActivity.Java

private int[] imageResId = {// icon resource }; 
    mTabLayout = (TabLayout) view.findViewById(R.id.tl_viewer); 
    mViewpager = (ViewPager) view.findViewById(R.id.vp_viewer); 
    mTabLayout.setupWithViewPager(mViewpager); 


    //Method to set up tab layout icon 
    private void setUpTabIcon() { 
    for (int i = 0; i < mTabLayout.getTabCount(); i++) { 

     mTabLayout.getTabAt(i).setIcon(imageResId[i]); 


    } 

} 

ViewPagerアダプタから選択されたタブ数とタブのテキスト。そして、アイコンがsetTabIcon方法から選ん

+0

コードをありがとう、コードは本当に役立ちます。しかし、私の問題は、私のイメージは、URLの形でサーバーから来ている、私はどのようにアイコンとしてタブにそれらを設定することができます。リソースディレクトリに保存されている描画可能なイメージはありません。あなたがこれについて考えていないなら、私にいくつかの提案をしてください。 –

+0

mTab​​Layout.getTabAt(i).setIcon(Drawable d)この関数はdrawableを受け入れます。任意のライブラリPicasso、Glideなどを使用してイメージをダウンロードし、そのイメージをDrawableに変換してTabアイコンに設定することができます。 –

関連する問題