如何在android中正确实现Android-ViewpagerIndicator

时间:2015-01-15 06:03:28

标签: android android-viewpager viewpagerindicator

我在我的Android应用程序中使用ViewPagerIndicator库。我收到一个错误说,

01-14 17:54:38.195:E / AndroidRuntime(12200):引起: android.view.InflateException:二进制XML文件行#12:错误膨胀 class com.viewpagerindicator.TitlePageIndicator

我的XML代码是:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical" >

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1" />

<com.viewpagerindicator.CirclePageIndicator
    android:id="@+id/indicator"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#FFCCCCCC"
    android:padding="10dip"
    app:fillColor="#FF888888"
    app:pageColor="#88FF0000"
    app:radius="10dp"
    app:strokeColor="#FF000000"
    app:strokeWidth="2dp" />

</LinearLayout>

我的活动代码是,

public class ProfileActivity extends FragmentActivity {


ViewPager pager;
CirclePageIndicator indicator;

@Override
protected void onCreate(Bundle arg0) {
    super.onCreate(arg0);
    setContentView(R.layout.activity_profile_step1);
    pager = (ViewPager)findViewById(R.id.pager);

    ArrayList<fragmentViewPager> frags = new ArrayList<fragmentViewPager>();

    fragmentViewPager f1 = new fragmentViewPager(1);
    fragmentViewPager f2 = new fragmentViewPager(2);
    fragmentViewPager f3 = new fragmentViewPager(3);

    frags.add(f1);
    frags.add(f2);
    frags.add(f3);

    ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager(), frags);
    pager.setAdapter(adapter);
    indicator = (CirclePageIndicator) findViewById(R.id.indicator);
    indicator.setViewPager(pager);
  }
}

我已正确添加了库。这有什么不对?感谢。

2 个答案:

答案 0 :(得分:0)

您的XML代码出错 颜色是用6位数而不是8位数写的。 (红绿蓝)每种颜色两种 所以你不能写 android:background="#FFCCCCCC"  正确的是android:background="#FFCCCC" 为你的所有颜色做这件事 像那样

<com.viewpagerindicator.CirclePageIndicator
android:id="@+id/indicator"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#FFCCCC"
android:padding="10dip"
app:fillColor="#FF8888"
app:pageColor="#88FF00"
app:radius="10dp"
app:strokeColor="#FF0000"
app:strokeWidth="2dp" />

答案 1 :(得分:0)

您的XML中有一些错误,有些人尝试使用此代码

    <com.viewpagerindicator.CirclePageIndicator
    android:id="@+id/indicator"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#FBFBFB"
    android:padding="15dip"
    android:textColor="#2FB3E3"
    app:footerColor="#2FB3E3"
    app:footerIndicatorHeight="3dp"
    app:footerIndicatorStyle="underline"
    app:footerLineHeight="1dp"
    app:selectedBold="true"
    app:selectedColor="#0393D9" 
    app1:strokeColor="#BCA99F"

    />