相关疑难解决方法(0)

Android SlidingTabLayout带图标

我在我的视图中使用谷歌的SlidingTabLayout,但我想在标签中添加图标.我正在使用这个http://developer.android.com/samples/SlidingTabsBasic/src/com.example.android.common/view/SlidingTabLayout.html 任何人都可以帮忙吗?

void setUpPager(View view){
    mViewPager = (ViewPager) view.findViewById(R.id.viewpager);
    mViewPager.setAdapter(new TabsPagerAdapter(getActivity()));
    mSlidingTabLayout = (SlidingTabLayout) view.findViewById(R.id.sliding_tabs);
    mSlidingTabLayout.setViewPager(mViewPager);
  }
Run Code Online (Sandbox Code Playgroud)

这是我的xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical">

  <android.common.view.SlidingTabLayout
      android:id="@+id/sliding_tabs"
      android:layout_width="match_parent"
      android:layout_height="wrap_content" />

  <android.support.v4.view.ViewPager
      android:id="@+id/viewpager"
      android:layout_width="match_parent"
      android:layout_height="0px"
      android:layout_weight="1"
      android:background="@android:color/white"/>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

android android-layout android-tabs pagerslidingtabstrip android-tabstrip

14
推荐指数
3
解决办法
2万
查看次数

SlidingTabLayout仅带图标

按照这个例子,我能够创建一个仅带图标的SlidingTabLayout,但我想将它们居中.我是否需要创建自定义视图或是否有其他解决方案?

任何帮助,将不胜感激.

在此输入图像描述

android android-layout

6
推荐指数
1
解决办法
4774
查看次数

android.content.res.Resources android.content.Context.getResources()在空对象引用上

我试图在SlidingTabLayout上显示图标,所以在我的适配器中创建了类似这样的内容,我在寻找教程的某个时候找到了它,所以我编辑了将使用getDrawable的部分,因为它说它已经被弃用并且应用我发现的解决方案

    @Override
public CharSequence getPageTitle(int position) {

    Drawable image = ResourcesCompat.getDrawable(mContext.getResources(), icons[position], null);
    image.setBounds(0, 0, 48, 48);
    SpannableString sb = new SpannableString(" ");
    ImageSpan imageSpan = new ImageSpan(image, ImageSpan.ALIGN_BOTTOM);
    sb.setSpan(imageSpan, 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    return sb;
}
Run Code Online (Sandbox Code Playgroud)

我也在我的适配器上声明了它,我已经在这里检查是否确实将它放在可绘制对象上,并且所有这些都在那里。

  private int[] icons = {
        R.drawable.tabone,
        R.drawable.tabtwo,
        R.drawable.tabthree,
        R.drawable.tapfour,
        R.drawable.tabfive
};
Run Code Online (Sandbox Code Playgroud)

我不知道我做错了什么,但我总是遇到这个错误

Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
Run Code Online (Sandbox Code Playgroud)

即使我声明一个变量来处理图像。谁能帮助我,我的最低版本为14,目标sdk为22。谢谢。

这是我的适配器代码

public class ViewPagerAdapter extends FragmentStatePagerAdapter {

CharSequence Titles[]; 
int NumbOfTabs;

Context mContext;

private int[] icons = { …
Run Code Online (Sandbox Code Playgroud)

tabs android

5
推荐指数
1
解决办法
2万
查看次数