android - 如何在带点的Viewpager中显示全屏

标签 android android-fragments android-viewpager

我已经用点实现了 viewpager,但在设备中它显示如下 view pager with dots viewpager 中的第二个屏幕在滚动前可见 30%,如何解决这个问题。在此处添加我的代码,但我没有得到代码中的错误 这是我的代码

public class MainActivity extends Activity {
    // Declare Variables
    ViewPager viewPager;
    PagerAdapter adapter;
    LinearLayout llDots;
    TextView fbLogin, textViewText1, textView2, textView3, textView4;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Get the view from viewpager_main.xml
        setContentView(R.layout.viewpager_main);
        Typeface custom_font = Typeface.createFromAsset(getAssets(), "fonts/Candara.ttf");
        llDots = (LinearLayout) findViewById(R.id.llDots);
        viewPager = (ViewPager) findViewById(R.id.pager);

        adapter = new ViewPagerAdapter(this);
        viewPager.setAdapter(adapter);
        fbLogin = (TextView) findViewById(R.id.textViewfacebook);
        textViewText1 = (TextView) findViewById(R.id.textViewfacebook);
        textView2 = (TextView) findViewById(R.id.textView2);
        textView3 = (TextView) findViewById(R.id.textView3);
        textView4 = (TextView) findViewById(R.id.textView4);

        for (int i = 0; i < adapter.getCount(); i++) {
            ImageButton imgDot = new ImageButton(this);
            imgDot.setTag(i);
            imgDot.setImageResource(R.drawable.dot_selector);
            imgDot.setBackgroundResource(0);
            imgDot.setPadding(5, 5, 5, 5);

            LayoutParams params = new LayoutParams(30, 30);
            imgDot.setLayoutParams(params);
            if (i == 0)
                imgDot.setSelected(true);

            llDots.addView(imgDot);
        }

        viewPager.setOnPageChangeListener(new OnPageChangeListener() {

            @Override
            public void onPageSelected(int pos) {
                Log.e("", "Page Selected is ===> " + pos);
                for (int i = 0; i < adapter.getCount(); i++) {
                    if (i != pos) {
                        ((ImageView) llDots.findViewWithTag(i))
                                .setSelected(false);
                    }
                }
                ((ImageView) llDots.findViewWithTag(pos)).setSelected(true);
            }

            @Override
            public void onPageScrolled(int pos, float arg1, int arg2) {

            }

            @Override
            public void onPageScrollStateChanged(int arg0) {

            }
        });

    }

    public void facebookLogin(View v) {
        Intent fbIntent = new Intent(MainActivity.this, EditProfile.class);
        startActivity(fbIntent);
    }

}

最佳答案

请将此布局用作您的 XML 并在您的项目中导入 VPI 库。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFFFFF">

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <com.viewpagerindicator.CirclePageIndicator
        android:id="@+id/mc_cpi"
        android:layout_alignParentBottom="true"
        android:layout_centerInParent="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:radius="4dp"
        android:padding="5dp"
        app:strokeColor="@color/primary_dark"
        app:strokeWidth="1px"
        app:snap="true"
        app:fillColor="@color/primary" />

</RelativeLayout>

关于android - 如何在带点的Viewpager中显示全屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29339440/

相关文章:

java - 如何在 viewpager 中的 View 之间保存按钮按下的状态和值?

android - 将文件从sdcard复制到android内部存储目录

java - 如何使用 GSON 反序列化嵌套的 JSON 数组?

java - 引用同一类的所有对象

java - 如何在ActionBar中创建二级下拉列表?

android - 如何在 Android 中为 fragment 制作单独的返回堆栈

android - 如何反转 viewpager 滑动

android - 如何在 Android 库中保存对上下文对象的引用

android - invalidateOptionsMenu 在 fragment 中不起作用

android - ViewPager 如何仅在超出 PagerTitleStrip 的情况下滑动 View