คำถามติดแท็ก android-viewpager

ViewGroup ที่จัดการโครงร่างสำหรับมุมมองย่อยที่ผู้ใช้สามารถปัดระหว่าง

8
เพิ่มและลบมุมมองไปยัง viewpager แบบไดนามิก
(ฉันหาวิธีแก้ปัญหา - โปรดดูโพสต์ของฉันในส่วนคำตอบด้านล่าง) ในแอพของฉันผู้ใช้จะเริ่มต้นด้วยมุมมองเดียวของข้อมูลของเขา ฉันต้องการเพิ่ม ViewPager และอนุญาตให้ผู้ใช้เพิ่มมุมมองเพิ่มเติมตามต้องการ ฉันจะทำสิ่งนี้ได้อย่างไร (ฉันไม่ต้องการใช้ FragmentPagerAdapter) ฉันอ่านโพสต์และภาพรวมนับไม่ถ้วน แต่ยังขาดอะไรบางอย่าง นี่คือสิ่งที่ฉันคิดว่าฉันเข้าใจ: MainActivity สร้าง ViewPager และ PagerAdapter: ViewPager pager = null; MainPagerAdapter adapter = null; public void onCreate (Bundle savedInstanceState) { super.onCreate (savedInstanceState); pager = new ViewPager (this); setContentView (pager); adapter = new MainPagerAdapter(); pager.setAdapter (adapter); View v0 = …


5
จะเปลี่ยนหน้าของ ViewPager ได้อย่างไร?
ฉันใช้ ViewPager ในแอพของฉันและกำหนดไว้ในกิจกรรมหลัก onCreateวิธีการภายในฉันโหลดบางหน้าจาก SharedPreferences แล้วส่งไปที่ PagerAdapter: @Override public int getCount() { return numberOfPages; } ปัญหาคือถ้าฉันจะเปลี่ยนหมายเลขนี้ในการตั้งค่า (หรือกิจกรรมอื่น) ให้น้อยกว่าดัชนีหน้าฉันดูก่อนหน้านี้แอปของฉันเกิดปัญหาเพราะดัชนีนี้อยู่นอกขอบเขตเมื่อฉันกลับไปที่กิจกรรมด้วย ViewPager นี้ สามารถแก้ไขได้ง่ายๆโดยเปลี่ยนหน้าของ ViewPager ที่ใช้งานอยู่ มีวิธีใดบ้างที่จะทำ?

5
พิจารณาว่าเมื่อใดที่ ViewPager เปลี่ยนหน้า
ฉันมีสามหน้า (แฟรกเมนต์) ใน ViewPager แต่ฉันต้องการแสดงรายการเมนูสำหรับสองหน้าเท่านั้น รหัสที่ให้ไว้ในคำตอบ SO ก่อนหน้าดูเหมือนจะไม่ทำงาน: @Override public void setUserVisibleHint(boolean isVisibleToUser) { super.setUserVisibleHint(isVisibleToUser); if (isVisibleToUser == true) { } else if (isVisibleToUser == false) { } } Eclipse บอกว่าไม่จำเป็น @Override และไม่สามารถตั้งค่า super ได้ มันไม่เคยถูกเรียกโดยระบบและถึงแม้ว่าฉันจะกำหนดได้อย่างไรว่าหน้าใดที่ถูกแสดงในขณะนี้ ฉันขอความช่วยเหลือจากที่นี่ได้ไหม

7
ViewPager ที่มีขอบเขตหน้าก่อนหน้าและถัดไป
ฉันกำลังออกแบบมุมมองที่มีหลายหน้า ฉันต้องการให้ขอบของหน้าก่อนหน้าและหน้าถัดไปแสดงแบบด้านล่างและใช้การปัดสองนิ้วเพื่อสลับระหว่างหน้า ฉันลองใช้โดยViewPagerมีขอบหน้าติดลบตามที่แนะนำที่นี่แต่แสดงให้เห็นเพียงหนึ่งในขอบบนหน้าจอไม่ใช่ทั้งสองอย่างพร้อมกัน อีกวิธีหนึ่งคือมีวิธีใดที่ฉันสามารถวางตำแหน่งส่วนหนึ่งของมุมมองของฉันนอกหน้าจอแล้วเคลื่อนไหวมันให้ViewPagerผลชนิด ฉันจะไปเกี่ยวกับมันได้อย่างไร ขอบคุณมาก!

10
อัปเดตข้อมูลใน ListFragment เป็นส่วนหนึ่งของ ViewPager
ฉันใช้ ViewPager ความเข้ากันได้ v4 ใน Android My FragmentActivity มีกลุ่มของข้อมูลที่จะแสดงในรูปแบบที่แตกต่างกันในหน้าต่างๆใน ViewPager ของฉัน จนถึงตอนนี้ฉันมี ListFragment เดียวกัน 3 อินสแตนซ์ แต่ในอนาคตฉันจะมี ListFragments 3 อินสแตนซ์ที่ต่างกัน ViewPager อยู่บนหน้าจอโทรศัพท์แนวตั้งรายการไม่ได้อยู่ติดกัน ตอนนี้ปุ่มบน ListFragment จะเริ่มกิจกรรมเต็มหน้าแยก (ผ่าน FragmentActivity) ซึ่งส่งคืนและ FragmentActivity แก้ไขข้อมูลบันทึกจากนั้นพยายามอัปเดตมุมมองทั้งหมดใน ViewPager ที่นี่ฉันอยู่ตรงไหน public class ProgressMainActivity extends FragmentActivity { MyAdapter mAdapter; ViewPager mPager; @Override public void onCreate(Bundle savedInstanceState) { ... mAdapter …

13
เป็นไปได้หรือไม่ที่จะปิดการใช้งานการเลื่อนบน ViewPager
ฉันมีViewPagerที่ instantiates Viewฉันต้องการปิดใช้งานทั้งการเลื่อนดูเพจเจอร์และปุ่มลูกศรชั่วขณะในขณะที่ผลการค้นหากลับสู่มุมมอง ฉันกำลังโทรviewPager.setEnabled(false)แต่นี่ไม่ได้ปิดการใช้งาน ใครมีความคิดเห็นบ้าง

16
ลบ Fragment Page ออกจาก ViewPager ใน Android
ฉันกำลังพยายามเพิ่มและลบ Fragments จาก ViewPager แบบไดนามิกเพิ่มงานโดยไม่มีปัญหา แต่การลบไม่ทำงานอย่างที่คาดไว้ ทุกครั้งที่ฉันต้องการลบรายการปัจจุบันรายการสุดท้ายจะถูกลบ ฉันยังพยายามใช้ FragmentStatePagerAdapter หรือส่งคืน POSITION_NONE ในวิธีการ getItemPosition ของอะแดปเตอร์ ผมทำอะไรผิดหรือเปล่า? นี่คือตัวอย่างพื้นฐาน: MainActivity.java public class MainActivity extends FragmentActivity implements TextProvider { private Button mAdd; private Button mRemove; private ViewPager mPager; private MyPagerAdapter mAdapter; private ArrayList<String> mEntries = new ArrayList<String>(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); …

3
ป้องกันไม่ให้ ViewPager ทำลายมุมมองนอกหน้าจอ
ฉันมี ViewPager ที่เชื่อมต่อกับ FragmentPagerAdapter ที่แสดงสามส่วน ViewPager ดูเหมือนจะทำลายมุมมองของแฟรกเมนต์ที่โฮสต์เมื่อมีการปัดออกจากตำแหน่งปัจจุบันมากกว่าหนึ่งครั้ง มุมมองเหล่านี้เป็นรายการที่เรียบง่ายทั้งหมดและการเพิ่มประสิทธิภาพนี้ไม่จำเป็นโดยสิ้นเชิงดังนั้นฉันต้องการปิดใช้ มันทำให้เกิดปัญหาทางสายตาเนื่องจากรายการมีการใช้ภาพเคลื่อนไหวเค้าโครงและภาพเคลื่อนไหวเหล่านั้นจะถูกเล่นซ้ำหลังจากที่พวกมันถูกทำลายและสร้างขึ้นใหม่ นอกจากนี้ยังแสดงภาพเคลื่อนไหวแนะนำแถบเลื่อนทุกครั้ง (โดยที่แถบเลื่อนจะมองเห็นได้ในเวลาสั้น ๆ เพื่อระบุว่าสามารถเลื่อนได้) ซึ่งอาจทำให้เสียสมาธิและตำแหน่งการเลื่อนปัจจุบันของผู้ใช้จะหายไปในกระบวนการ นอกจากนี้ยังไม่โหลดส่วนที่สามจนกว่าการปัดครั้งแรกจะเกิดขึ้นซึ่งเป็นปัญหาเนื่องจากแต่ละส่วนจัดการการเรียกใช้บริการของตัวเองและฉันต้องการให้ทั้งสามเริ่มการทำงานพร้อมกันเมื่อกิจกรรมโหลดขึ้น การเรียกใช้บริการครั้งที่สามล่าช้าน้อยกว่าอุดมคติ มีวิธีใดบ้างที่จะโน้มน้าวให้ ViewPager หยุดพฤติกรรมนี้และเก็บชิ้นส่วนทั้งหมดของฉันไว้ในความทรงจำ

15
Android: Vertical ViewPager [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดเมื่อปีที่แล้ว ปรับปรุงคำถามนี้ มีวิธีทำให้ a ViewPagerที่ไม่เลื่อนในแนวนอน แต่แนวตั้งหรือไม่!

7
ฉันสามารถใช้เพจเจอร์มุมมองกับมุมมองได้หรือไม่ (ไม่ใช่กับส่วนย่อย)
ฉันใช้ViewPagerสำหรับการปัดระหว่างFragmentsแต่ฉันสามารถใช้ViewPagerเพื่อปัดระหว่างViewsเลย์เอาต์ XML แบบธรรมดาได้หรือไม่ นี่คือหน้าของฉันAdapterสำหรับ ViewPager ซึ่งใช้ในการปัดระหว่าง Fragments: import java.util.List; import com.app.name.fragments.TipsFragment; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.app.FragmentTransaction; import android.view.ViewGroup; public class PageAdapter extends FragmentPagerAdapter { /** * */ List<Fragment> fragments; public PageAdapter(FragmentManager fm,List<Fragment> frags) { super(fm); fragments = frags; } @Override public Fragment getItem(int arg0) { // TODO …

19
ViewPager ใน NestedScrollView
ฉันต้องการสร้างอินเทอร์เฟซเช่น Google Newsstand ซึ่งเป็น ViewPager ประเภทหนึ่ง (เลื่อนแนวนอน) บนส่วนหัวที่ยุบลง (เลื่อนแนวตั้ง) ข้อกำหนดอย่างหนึ่งของฉันคือการใช้ไลบรารีการสนับสนุนการออกแบบใหม่ที่นำเสนอใน Google IO 2015 ( http://android-developers.blogspot.ca/2015/05/android-design-support-library.html ) จากตัวอย่างที่สร้างโดย Chris Banes ( https://github.com/chrisbanes/cheesesquare ) ฉันมาถึงจุดที่ฉันสามารถทำพฤติกรรมการยุบตัวได้ แต่ด้วย LinearLayout พื้นฐาน (ไม่มีการเลื่อนแนวนอน) ฉันพยายามแทนที่ LinearLayout ด้วย ViewPager และได้หน้าจอว่างเปล่า ฉันเล่นกับ: ความกว้างน้ำหนักและกลุ่มมุมมองทุกประเภท แต่ .... ยังคงเป็นหน้าจอว่างเปล่า ดูเหมือนว่า ViewPager และ NestedScrollView จะไม่ชอบกันและกัน ฉันลองวิธีแก้ปัญหาโดยใช้ HorizontalScrollView มันใช้งานได้ แต่ฉันใช้ประโยชน์จากคุณสมบัติ PagerTitleStrip และโฟกัสไปที่แผงเดียว (ฉันสามารถหยุดแนวนอนระหว่าง 2 …

13
รับข้อผิดพลาด“ Java.lang.IllegalStateException Activity ถูกทำลาย” เมื่อใช้แท็บกับ ViewPager
ฉันมีแอปพลิเคชันที่ประกอบด้วยการใช้ ActionBarSherlock ในโหมดแท็บฉันมี 5 แท็บและจัดการเนื้อหาของแต่ละแท็บโดยใช้ชิ้นส่วน สำหรับ tab2 ฉันมีแฟรกเมนต์ไฟล์ xml ซึ่งมีองค์ประกอบ ViewPager ซึ่งจะมีเพจแฟรกเมนต์บางเพจ เมื่อฉันเริ่มต้นแอปพลิเคชันแอปพลิเคชันฉันสามารถสลับไปมาระหว่างแท็บได้โดยไม่มีปัญหา แต่เมื่อฉันกด tab2 เป็นครั้งที่สองฉันได้รับข้อผิดพลาดดังกล่าวข้างต้น กิจกรรมหลักมีดังนี้: public class MainActivity extends SherlockFragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ActionBar actionBar = getSupportActionBar(); ActionBar.Tab tab1 = actionBar.newTab().setText("Tab1"); ActionBar.Tab tab3 = actionBar.newTab().setText("Tab3"); ActionBar.Tab tab2 = actionBar.newTab().setText("Tab2"); ActionBar.Tab tab4 = …

10
Android ViewPager - แสดงตัวอย่างของหน้าทางซ้ายและขวา
ฉันใช้ ViewPagerAndroid สิ่งที่ฉันต้องการทำคือการแสดงตัวอย่างของหน้าทั้งทางซ้ายและทางขวา ฉันเคยเห็นว่าฉันสามารถใช้ลบpageMarginเพื่อแสดงตัวอย่างทางด้านขวาได้ที่ไหน setPageMargin(-100); ยังมีอีกไหมที่ฉันสามารถแสดงตัวอย่างด้านซ้ายได้ด้วย? โดยพื้นฐานแล้วมันคล้ายกับวิดเจ็ตแกลเลอรีที่ฉันกำลังมองหา

7
จะป้องกันไม่ให้ scrollview เลื่อนไปที่ webview หลังจากโหลดข้อมูลได้อย่างไร?
ดังนั้นฉันจึงมีปัญหาที่น่าสนใจ แม้ว่าฉันจะไม่ได้เลื่อนมุมมองด้วยตนเองหรือโดยใช้โปรแกรม แต่ WebView ของฉันจะถูกเลื่อนไปโดยอัตโนมัติหลังจากที่ข้อมูลภายในโหลดขึ้น ฉันมีส่วนใน viewpager เมื่อฉันโหลดเพจเจอร์ครั้งแรกมันทำงานตามที่คาดไว้และทุกอย่างจะปรากฏขึ้น แต่เมื่อฉัน "พลิกหน้า" ข้อมูลจะโหลดขึ้นและ WebView จะปรากฏขึ้นที่ด้านบนของหน้าโดยซ่อนมุมมองไว้ด้านบนซึ่งเป็นสิ่งที่ไม่พึงปรารถนา ไม่มีใครรู้วิธีป้องกันไม่ให้เกิดขึ้น เค้าโครงของฉันมีลักษณะดังนี้: <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/background" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <TextView android:id="@+id/article_title" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="10dp" android:layout_marginLeft="10dp" android:layout_marginTop="10dp" android:layout_marginBottom="2dp" android:text="Some Title" android:textAppearance="?android:attr/textAppearanceLarge" android:textColor="@color/article_title" android:textStyle="bold" /> <LinearLayout android:id="@+id/LL_Seperator" android:layout_width="fill_parent" android:layout_height="1dp" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="5dp" …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.