viewpager의 페이지에 3 개의 아이템을 보여줄 수 있으면 좋겠지 만 지금은 viewpager의 패딩 값과 여백 값만 설정할 수 있으므로 viewpager의 페이지에 하나의 아이템 만 보여줄 수 있습니다. 아이템 너비는 어떻게 설정할 수 있습니까? 항목의 너비를 조금이라도 설정할 수 있다면 뷰 페이지는 페이지에 더 많은 항목을 표시합니다.뷰 페이지의 항목 너비를 설정할 수 있습니까?
답변
페이지 여백을 음수로 설정 했습니까? setPageMargin(int)
? 내가 올바르게 기억하면, 당신이 그런 식으로 설명하는 것과 비슷한 것을 깨닫는 누군가를 읽습니다.
다른 방법으로는 Gallery
을 사용하는 방법을 살펴볼 수도 있습니다.하지만 덜 유연하고 버그가 많은 것으로 보이는 점을 인정해야합니다.
빠른 응답
당신이 그 ViewPager
위해 만든 PagerAdapter
구현 getPageWidth
를 오버라이드 (override)되어 원하는 것은.
예를 들어 0.8f
으로 설정하면 다음 페이지 및/또는 이전 페이지의 일부가 보이도록 단일 페이지가 뷰 페이지 너비의 80 % 만 덮게됩니다. https://developer.android.com/reference/android/support/v4/view/PagerAdapter.html#getPageWidth(int)
다른 발언
에서@Override
public float getPageWidth(final int position) {
return 0.8f;
}
자세한 내용은 또한 부정적인 마진 만 별도의 페이지가 서로 겹치지이되지 않습니다. 여백은 각 페이지 사이의 공간을 정의하는 데 사용됩니다.
다른 페이지 너비가 구성되지 않은 경우 (설정 자, 무시 만) 기본값으로 100 %를 덮어서 드래그하지 않으면 다른 페이지를 볼 수 없습니다. 무엇이 가능한지의
코드 예제
아주 좋은 개요 레이아웃 여기에 https://commonsware.com/blog/2012/08/20/multiple-view-viewpager-options.html
뷰 페이저 인라인 구성 어댑터 구현의
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v4.view.ViewPager>
예를 찾을 수있다,이 것 onCreate 또는 onViewCreated 메소드로 이동하십시오.
// get a reference to the viewpager in your layout
ViewPager mViewPager = (ViewPager) findViewById(R.id.viewpager);
// this margin defines the space between the pages in the viewpager mViewPager.setPageMargin(context.getResources().getDimensionPixelSize(R.dimen.margin_normal));
// setting the adapter on the viewpager, this could/should be a proper Adapter implementation in it's own class file instead
mViewPager.setAdapter(new PagerAdapter() {
// just example data to show, 3 pages
String[] titles = {"Eins", "Zwei", "Drei"};
int[] layouts = {R.layout.layout1, R.layout.layout2, R.layout.layout3};
@Override
public Object instantiateItem(ViewGroup container, int position) {
LayoutInflater inflater = LayoutInflater.from(MainActivity.this);
// here you can inflate your own view and dress up
ViewGroup layout = (ViewGroup) inflater.inflate(layouts[position], container, false);
container.addView(layout);
return layout;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View)object);
}
@Override
public float getPageWidth(final int position) {
return 0.8f;
}
@Override
public CharSequence getPageTitle(int position) {
return titles[position];
}
@Override
public int getCount() {
return layouts.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
});
예제 코드를 기반으로 https://newfivefour.com/android-viewpager-simple-views.html
커먼웨어 링크 (두 번째 것)가 도움이됩니다! –
- 1. Vaadin에서 백분율로 열 너비를 설정할 수 있습니까?
- 2. iFrame의 src 이미지의 너비를 설정할 수 있습니까?
- 3. 선택 요소 너비를 백분율로 설정할 수 있습니까?
- 4. 오버플로 숨김으로 90 % 너비를 설정할 수 있습니까?
- 5. SQLite 테이블에서 열 너비를 설정할 수 있습니까?
- 6. 뷰 페이지 내에서보기의 너비를 변경할 수 있습니까?
- 7. 선택기보기에서 구성 요소 너비를 설정할 수 없습니다.
- 8. UITableViewCell 내부의 UIImageView에서 고정 너비를 설정할 수 있습니까?
- 9. 런타임 중에 버튼의 너비를 어떻게 설정할 수 있습니까?
- 10. Slickgrid에서 프로그래밍 방식으로 열 너비를 설정할 수 있습니까?
- 11. 다른쪽에 다른 CALayer 테두리 너비를 설정할 수 있습니까?
- 12. twitter-bootstrap에서 반응 형 레이아웃의 최대 너비를 설정할 수 있습니까?
- 13. Gtk에서 동적으로 창 높이와 너비를 설정할 수 있습니까?
- 14. iPad에서 UITableView 또는 셀의 너비를 설정할 수 있습니까?
- 15. 안드로이드에서, 어떻게 ListView 항목의 높이와 너비를 설정할 수 있습니까?
- 16. MVC 뷰에서 테이블 열 너비를 어떻게 설정할 수 있습니까?
- 17. asp.net mvc 3에서 텍스트 상자의 너비를 어떻게 설정할 수 있습니까?
- 18. SSRS에서 매개 변수 너비를 수동으로 설정할 수 있습니까?
- 19. 페이지의 높이 및 너비를 테스트 할 수 있습니까
- 20. WPF에서 목록 뷰 열의 너비를 자동으로 변경
- 21. Magento CMS 페이지의 자동 발행을 설정할 수 있습니까?
- 22. 동적 페이지의 IIS ARR (역방향 프록시) 캐시를 설정할 수 있습니까?
- 23. 어떻게하면 장고 뷰 데코레이터에서 컨텍스트의 값을 설정할 수 있습니까?
- 24. asp.net에서 페이지의 Title-property를 설정할 수 없습니다.
- 25. UITabBarController를 segue.destinationViewController로 설정할 수 있습니까?
- 26. ViewBag 항목 유형을 설정할 수있는 방법이 있습니까?
- 27. 안드로이드에서 뷰 너비를 측정하는 방법
- 28. ValidationSummaryControl의 범위를 설정할 수 있습니까?
- 29. TFS2010에 새 연결된 작업 항목 만들기 - 기본값을 설정할 수 있습니까?
- 30. WPF ListBox의 높이를 항목 높이의 배수로 설정할 수 있습니까?
답해 주셔서 감사합니다. 부모보기에 목록을 추가해야하므로 갤러리를 사용할 수 없습니다. 갤러리에는 문제가 있습니다. –
감사합니다, 당신의 이상으로 달성했습니다. –
슬라이드의 일부가 겹치기 전에 슬라이드의 일부가 손댈 수 없게 만듭니다. –