Android的CircularPageIndicator在统筹布局不显示布局、Android、CircularPageIndicator

2023-09-06 23:53:03 作者:不甘平庸.自甘堕落

我设置ViewPager下方CircularPagerIndicator使用CoordinatorLayout但它没有显示。下面是XML

I am setting the CircularPagerIndicator underneath ViewPager using CoordinatorLayout but it is not displaying. Below is the XML

<?xml version="1.0" encoding="utf-8"?>
 <android.support.design.widget.CoordinatorLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
   xmlns:tools="http://schemas.android.com/tools"
   android:id="@+id/main_content"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:fitsSystemWindows="true"
   tools:context="mypackage.HomeActivity">

<android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="@dimen/appbar_padding_top"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|enterAlways"
        app:popupTheme="@style/AppTheme.PopupOverlay">

    </android.support.v7.widget.Toolbar>

</android.support.design.widget.AppBarLayout>


<android.support.v4.view.ViewPager
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingRight="@dimen/view_pager_padding"
    android:paddingLeft="@dimen/view_pager_padding"
    app:layout_behavior="@string/appbar_scrolling_view_behavior" />

<mypackage.CirclePageIndicator
    android:id="@+id/indicator"
    android:clickable="false"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    app:radius="5dp"
    app:fillColor="#FF888888"
    app:pageColor="#88FF0000"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"/>


<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin"
    android:src="@android:drawable/ic_dialog_email" />

</android.support.design.widget.CoordinatorLayout>

下面方法被称为从onCreate方法我的活动

Below method is called my Activity from onCreate Method

private void displayCarts(){
    mSectionPagerAdapter = new SectionPagerAdapter(getSupportFragmentManager(), mCartCount, cartMap);
    mViewPager = (ViewPager) findViewById(R.id.container);
    mViewPager.setAdapter(mSectionPagerAdapter);

    mCartCountIndicator = (CirclePageIndicator) findViewById(R.id.indicator);
    mCartCountIndicator.setViewPager(mViewPager);
}

不知道什么地方出了错。我跟着从这个链接的建议:的Andr​​oid CirclePageIndicator不工作 但加入协调布局jusr内一个额外的相对或线性布局,以显示CircularPagerIndicator不适合我的需要。有什么建议?

Not Sure what's going wrong. I followed the suggestion from this link : Android CirclePageIndicator not working but adding an extra Relative or linear layout within coordinator layout jusr to show CircularPagerIndicator does not fit my need. Any suggestions?

推荐答案

好了,现在我回落至增加的LinearLayout用于查看传呼机和PagerIndicator。我加TOPMARGIN到的LinearLayout显示整个视图寻呼机。可能不是最好的解决方案,但会做的伎俩现在。

well, for now I am falling back to adding linearlayout for View Pager and PagerIndicator. I added topmargin to the Linearlayout to display the whole view pager. Not the best possible solution , but will do the trick for now.

<?xml version="1.0" encoding="utf-8"?>
 <android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="mypackage.HomeActivity">

<android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="@dimen/appbar_padding_top"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|enterAlways"
        app:popupTheme="@style/AppTheme.PopupOverlay">

    </android.support.v7.widget.Toolbar>

</android.support.design.widget.AppBarLayout>

 <LinearLayout android:layout_width="match_parent"
    android:orientation="vertical"                                                                                                                         android:layout_gravity="center_horizontal"
    android:layout_height="match_parent"
    android:layout_marginTop="70dp">
<android.support.v4.view.ViewPager
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:paddingRight="@dimen/view_pager_padding"
    android:paddingLeft="@dimen/view_pager_padding"
    app:layout_behavior="@string/appbar_scrolling_view_behavior" />

<mypackage.CirclePageIndicator
    android:id="@+id/indicator"
    android:clickable="false"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    app:radius="5dp"
    app:fillColor="@color/default_circle_indicator_stroke_color"
    app:pageColor="@color/circlepageindicator_fill_color"

    android:layout_margin="@dimen/fab_margin"/>
</LinearLayout>>


<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin"
    android:src="@android:drawable/ic_dialog_email" />

</android.support.design.widget.CoordinatorLayout>