คำถามติดแท็ก scrollview

อย่าลืมใช้แท็ก ** เฉพาะแพลตฟอร์ม ** ใช้แท็กนี้สำหรับคำถามทั่วไปเกี่ยวกับมุมมองแบบเลื่อนบนทุกแพลตฟอร์มเท่านั้น มุมมองแบบเลื่อนคือมุมมองที่ผู้ใช้สามารถเลื่อนได้ภายในพื้นที่ที่มี หนึ่งในพื้นฐานของ UX สมัยใหม่ทั้งหมด


8
จะใช้ ScrollView ใน Android ได้อย่างไร?
ฉันมีไฟล์เลย์เอาต์ XML แต่ข้อความมีขนาดพอดีกับขนาดหน้าจอมากกว่า ฉันต้องทำอะไรเพื่อที่จะได้ScrollView? <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:stretchColumns="1" > <TableRow> <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dip" android:layout_marginTop="10dip" android:layout_marginRight="5dip" android:tint="#55ff0000" android:src="@drawable/icon" /> </TableRow> <TableRow> <TextView android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="3dip" android:text=" Name " /> <TextView android:id="@+id/name1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="left" android:text="Veer" /> </TableRow> <TableRow> <TextView android:id="@+id/age" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="3dip" android:text=" …

22
มีวิธีการเลื่อนมุมมองเลื่อนโดยทางโปรแกรมไปยังข้อความแก้ไขเฉพาะหรือไม่
ฉันมีกิจกรรมที่ยาวมาก ๆ ด้วย scrollview เป็นแบบฟอร์มที่มีเขตข้อมูลต่าง ๆ ที่ผู้ใช้ต้องกรอกฉันมีช่องทำเครื่องหมายครึ่งทางลงแบบฟอร์มของฉันและเมื่อผู้ใช้ตรวจสอบมันฉันต้องการที่จะเลื่อนไปยังส่วนเฉพาะของมุมมอง มีวิธีการเลื่อนไปยังวัตถุ EditText (หรือวัตถุมุมมองอื่น ๆ ) โดยทางโปรแกรมหรือไม่ นอกจากนี้ฉันรู้ว่าสิ่งนี้เป็นไปได้โดยใช้ X และ Y coords แต่ฉันต้องการหลีกเลี่ยงการทำเช่นนี้เนื่องจากแบบฟอร์มอาจเปลี่ยนจากผู้ใช้เป็นผู้ใช้

14
Android: วิธีตรวจสอบว่าสามารถมองเห็นวิวด้านในของ ScrollView ได้หรือไม่
ฉันมีซึ่งถือชุดของScrollView Viewsฉันต้องการทราบว่าขณะนี้มุมมองมองเห็นได้หรือไม่ (หากส่วนใดส่วนหนึ่งของมุมมองนั้นแสดงโดยScrollView) ฉันคาดหวังว่ารหัสด้านล่างเพื่อทำสิ่งนี้ไม่น่าแปลกใจที่: Rect bounds = new Rect(); view.getDrawingRect(bounds); Rect scrollBounds = new Rect(scroll.getScrollX(), scroll.getScrollY(), scroll.getScrollX() + scroll.getWidth(), scroll.getScrollY() + scroll.getHeight()); if(Rect.intersects(scrollBounds, bounds)) { //is visible }

14
วิธีเลื่อนไปที่ด้านบนสุดของเค้าโครง ScrollView ที่ยาวได้อย่างไร
สำหรับส่วนหนึ่งของแอพของฉันผู้ใช้จะได้รับรายชื่อและขอให้จัดกลุ่มตามที่เห็นสมควร (หมายเหตุรหัส ListView ถูกคัดลอกคำต่อคำจากการสอน Android Views ฉันยังไม่ได้ปรับแต่งมันให้ตรงกับความต้องการของฉันฉันแค่พยายามหาวิธีใช้งานนี้) เค้าโครงพื้นฐานคือ LinearLayout ที่มี ScrollView (เรียกว่า "groupsScrollView" ในรหัสด้านล่าง) ซึ่งมี RelativeLayout ฉันมีปุ่มและข้อความจากนั้น ListView ของฉันอยู่ด้านล่างซึ่งแสดงรายการชื่อ ทั้งหมดนี้สูงกว่าพื้นที่หน้าจอที่มองเห็นได้ดังนั้นผู้ใช้จึงสามารถเลื่อนในแนวตั้งเพื่อดูได้ทั้งหมด ทั้งหมดนี้ทำงานได้อย่างสวยงามยกเว้นเมื่อหน้าโหลดมันจะถูกเลื่อนไปด้านบนของ ListView ของฉันเสมอ - ในช่วงกลางของหน้า ข้อความและปุ่มที่ฉันสร้างที่บอกผู้ใช้ว่าต้องทำอย่างไรจะมองไม่เห็น ฉันสามารถคว้าหน้าจอและเลื่อนขึ้นซึ่งใช้งานได้ดี แต่ฉันต้องการให้หน้าจอโหลดหลังจากที่เลื่อนไปด้านบนแล้ว ผู้ใช้ไม่ควรเลื่อนขึ้นเพื่อดูด้านบนของหน้าที่โหลดใหม่ แต่ทุกอย่างที่ฉันพยายามเลื่อนไปทางด้านบนของหน้าจอโดยทางโปรแกรมล้มเหลว นี่คือวิธีการ onCreate ของฉัน: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.groups); mainScrollView = (ScrollView)findViewById(R.id.groupsScrollView); //get the Bundle out of the Intent... …

28
ListView ข้างใน ScrollView ไม่ได้เลื่อนบน Android
ฉันกำลังมีปัญหากับการเลื่อนภายในListView ScrollViewฉันมีกิจกรรมที่มี EditTexts บางส่วนในส่วนบนสุดแล้วโฮสต์แท็บที่มีสองแท็บที่มีหนึ่ง ListView แต่ละรายการ เมื่อเน้นมุมมอง EditText แป้นพิมพ์นุ่ม ๆ จะปรากฏขึ้นและเมื่อฉันมี ScrollView เนื้อหาจะสามารถเลื่อนได้ แต่ปัญหามาเมื่อมีรายการเพิ่มเติมใน ListViews (รายการในแท็บ) ฉันไม่สามารถเลื่อนมุมมอง ListView แม้ว่าจะมีรายการเพิ่มเติม ต่อไปนี้คือโครงร่าง XML: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="?backgroundImage" android:orientation="vertical"> <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="50dip" android:layout_alignParentBottom="true" android:layout_margin="10dip" android:id="@+id/buttons"> <Button android:text="Save" android:layout_margin="2dip" android:textSize="20dip" android:id="@+id/btnSaveorUpdate" android:layout_height="wrap_content" android:layout_width="145dip"></Button> <Button android:text="Cancel" android:layout_margin="2dip" android:textSize="20dip" android:id="@+id/btnCancelorDelete" android:layout_height="wrap_content" …

11
Scrollview แนวตั้งและแนวนอนใน Android
ฉันเหนื่อยมากที่กำลังมองหาวิธีแก้ไข Scrollview แนวตั้งและแนวนอน ฉันอ่านว่าไม่มีมุมมอง / เค้าโครงในกรอบงานที่ใช้คุณสมบัตินี้ แต่ฉันต้องการสิ่งนี้: ฉันจำเป็นต้องกำหนดเค้าโครงภายในอื่น ๆ เค้าโครงลูกต้องดำเนินการเลื่อนแนวตั้ง / แนวนอนสำหรับการย้าย เริ่มแรกใช้รหัสที่ย้ายเค้าโครงพิกเซลทีละพิกเซล แต่ฉันคิดว่านั่นไม่ใช่วิธีที่ถูกต้อง ฉันลองใช้ ScrollView และ Horizontal ScrollView แต่ไม่มีอะไรที่ฉันต้องการเพราะมันใช้การเลื่อนแนวตั้งหรือแนวนอนเท่านั้น Canvas ไม่ใช่วิธีแก้ปัญหาของฉันเพราะฉันจำเป็นต้องแนบผู้ฟังในองค์ประกอบย่อยของเด็ก ฉันจะทำอย่างไร

18
ฉันสามารถเลื่อน ScrollView โดยทางโปรแกรมใน Android ได้ไหม
มีวิธีใดในการเลื่อน ScrollViewโปรแกรมไปยังตำแหน่งใดตำแหน่งหนึ่งโดยโปรแกรม? ผมได้สร้างแบบไดนามิกซึ่งถูกวางไว้ในTableLayout ScrollViewดังนั้นฉันต้องการให้มีการกระทำที่เฉพาะเจาะจง (เช่นการคลิกปุ่ม ฯลฯ ) แถวใดแถวหนึ่งควรเลื่อนไปที่ตำแหน่งบนสุดโดยอัตโนมัติ เป็นไปได้ไหม?

2
มุมมองภายใน ScrollView ไม่เกิดขึ้น
ฉันมี RelativeLayout ภายใน ScrollView My RelativeLayout มีandroid:layout_height="match_parent"แต่มุมมองไม่ได้ใช้ขนาดทั้งหมดมันเหมือนกับ wrap_content มีวิธีที่จะมีพฤติกรรม fill_parent / match_parent จริงหรือไม่? เลย์เอาต์ของฉัน: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ImageView android:id="@+id/top" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:scaleType="fitXY" android:src="@drawable/top" /> <ImageView android:id="@+id/header" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@+id/top" android:scaleType="fitXY" android:src="@drawable/headerbig" /> <ImageView android:id="@+id/logo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/header" android:layout_centerHorizontal="true" android:layout_marginBottom="3dp" android:src="@drawable/logo" /> <ScrollView android:layout_width="fill_parent" android:layout_height="match_parent" android:layout_above="@+id/bottom" android:layout_below="@+id/logo" android:background="@drawable/background" > …

7
ฉันมี onScrollListener สำหรับ ScrollView ได้หรือไม่
ฉันกำลังใช้HorizontalScrollViewเลย์เอาต์และฉันต้องระบุผู้ใช้ถึงจุดเริ่มต้นและจุดสิ้นสุดของการเลื่อน สำหรับListViewฉันได้ลองonScrollListenerและมันเป็นไปได้ที่จะหาจุดเริ่มต้นและจุดสิ้นสุดของการเลื่อน ฉันพยายามทำสิ่งเดียวกันในของฉันScrollviewแต่ดูเหมือนจะเป็นไปไม่ได้ มีวิธีอื่นที่เป็นไปได้ที่จะบรรลุสิ่งที่ฉันต้องการหรือไม่

11
โทร RemoveView () บนแม่ของเด็กก่อน
พื้นหลังเล็กน้อยก่อน: ฉันมีเค้าโครงภายใน scrollview ในตอนแรกเมื่อผู้ใช้เลื่อนบนหน้าจอ scrollview จะเลื่อน อย่างไรก็ตามหลังจากเลื่อนจำนวนหนึ่งฉันต้องปิดใช้งานการเลื่อนในมุมมองเลื่อนการย้าย "เลื่อนโฟกัส" ไปยัง webview ภายในเค้าโครงเด็ก ด้วยวิธีนี้แถบเลื่อนและกิจกรรมการเลื่อนทั้งหมดจะไปที่มุมมองเว็บด้านใน ดังนั้นสำหรับวิธีแก้ปัญหาเมื่อถึงขีด จำกัด การเลื่อนฉันจะลบเลย์เอาต์ลูกออกจาก scrollview และวางไว้ในพาเรนต์ของ scrollview (และทำให้ scrollview ล่องหน) // Remove the child view from the scroll view scrollView.removeView(scrollChildLayout); // Get scroll view out of the way scrollView.setVisibility(View.GONE); // Put the child view into scrollview's parent view parentLayout.addView(scrollChildLayout); …

23
ฉันจะเลื่อน UIScrollView เมื่อแป้นพิมพ์ปรากฏขึ้นได้อย่างไร
ฉันมีปัญหากับรหัสของฉัน ฉันกำลังพยายามย้ายUIScrollViewเมื่อฉันแก้ไขสิ่งUITextFieldที่ควรจะซ่อนโดยป๊อปแป้นพิมพ์ ตอนนี้ฉันกำลังย้ายเฟรมหลักเพราะฉันไม่รู้ว่าจะ "เลื่อนขึ้น" ในโค้ดอย่างไร ดังนั้นฉันทำโค้ดนิดหน่อยมันก็ใช้งานได้ดี แต่เมื่อฉันแก้ไข UItextfield และฉันเปลี่ยนไปใช้อันอื่นUITextFieldโดยไม่ต้องกดปุ่ม 'return' มุมมองหลักจะไปไกลขึ้น ฉันทำNSLog()กับตัวแปรขนาดระยะทางและ textFieldRect.origin.y ดังที่คุณเห็นด้านล่าง เมื่อฉันใส่สองตัวUITextFieldในที่เดียวกัน (จุดเริ่มต้น y) และฉันทำ 'สวิตช์' นี้โดยเฉพาะ (โดยไม่ต้องกด return) ฉันจะได้ตัวเลขเดียวกันในขณะที่รหัสของฉันทำงานได้ดีสำหรับการUITextFieldแก้ไขครั้งแรกแต่ไม่ใช่สำหรับการแก้ไขครั้งที่สอง ลองดู: - (void)textFieldDidBeginEditing:(UITextField *)textField { { int size; CGRect textFieldRect = [self.view.window convertRect:textField.bounds fromView:textField]; size = textFieldRect.origin.y + textFieldRect.size.height; if (change == FALSE) { size = size …

7
ไม่มีแรงโน้มถ่วงสำหรับ scrollview วิธีสร้างเนื้อหาภายใน scrollview เป็นศูนย์กลาง
ฉันต้องการให้เนื้อหาภายใน scrollView เป็นศูนย์กลาง <ScrollView android:id="@+id/scroller" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingTop="12dp" android:paddingBottom="20dp" android:scrollbarStyle="outsideOverlay" android:layout_gravity="center" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="check" android:gravity="center_vertical|center_horizontal"/> </ScrollView> หมายเหตุ:ไม่มีandroid:gravityแอตทริบิวต์สำหรับ scrollvew โซลใด ๆ : -

6
ลบแทร็กแถบเลื่อนออกจาก ScrollView ใน Android
แอป Android ของฉันมี WebView หลัก (HTML โหลดจากทรัพยากรในเครื่อง) ซึ่งฉันต้องการใช้ความกว้างทั้งหมดของหน้าจอและสามารถเลื่อน (แนวตั้ง) ได้ ดังนั้นฉันจึงรวม WebView ไว้ใน ScrollView ใน XML เค้าโครงของฉัน แต่ไม่ว่าฉันจะทำอย่างไรฉันก็ไม่สามารถลบแทร็กแถบเลื่อนออกจากด้านขวาของมุมมองการเลื่อนได้ ที่แย่ไปกว่านั้นคือฉันไม่สามารถเปลี่ยนสีพื้นหลังของแทร็กแถบเลื่อนได้ แทร็กใช้เวลาประมาณ 10dp หรือมากกว่านั้นซึ่งสร้างปัญหาให้กับ HTML ใน WebView ฉันต้องการให้แถบเลื่อนปรากฏที่ด้านบนของมุมมองเว็บ (สไตล์ iPhone ถ้าคุณรู้ว่าฉันหมายถึงอะไร) ตอนนี้คุณสามารถพูดได้ว่า "ทำไมคุณไม่เปลี่ยน HTML ของคุณให้บางลง 10px" ซึ่งเป็นวิธีแก้ปัญหาสำรองของฉัน แต่ฉันไม่จำเป็นต้องทำ นี่คือตัวอย่าง XML ของเค้าโครงที่เกี่ยวข้องคุณจะเห็นว่าฉันได้ลองใช้คุณลักษณะ android: etc ทุกตัวที่ฉันพบ: <ScrollView android:id="@+id/deal_web_view_holder" android:layout_below="@id/clock_bar_holder" android:layout_width="fill_parent" android:layout_height="fill_parent" android:fillViewport="false" android:fadingEdge="none" android:background="#02a7e9" …

9
ViewPager ภายใน ScrollView ไม่เลื่อน Correclty
ฉันมี 'เพจ' ที่มีส่วนประกอบจำนวนหนึ่งและเนื้อหาของใครยาวเกินความสูงของอุปกรณ์ ดีเพียงวางเค้าโครงทั้งหมด (ทั้งหน้า) ไว้ใน a ScrollViewก็ไม่มีปัญหา หนึ่งในส่วนประกอบคือไฟล์ViewPager. สิ่งนี้แสดงผลได้อย่างถูกต้อง แต่การตอบสนองต่อการปัด / ปัดทำงานไม่ถูกต้องมันกระวนกระวายใจและไม่ได้ผลเสมอไป ดูเหมือนว่าจะ 'สับสน' กับสิ่งScrollViewนี้ดังนั้นจึงใช้ได้ 100% เมื่อคุณพุ่งไปในเส้นแนวนอนเท่านั้น หากฉันลบออกScrollViewViewPager จะตอบสนองอย่างสมบูรณ์ ฉันได้ค้นหารอบ ๆ และไม่พบว่านี่เป็นข้อบกพร่องที่ทราบ มีใครมีประสบการณ์นี้อีกบ้าง? เวอร์ชันแพลตฟอร์ม: 1.6.2 ไลบรารีที่เข้ากันได้ v4.2 อุปกรณ์: HTC Incredible S. ด้านล่างนี้เป็นโค้ดตัวอย่างเพื่อให้คุณทดสอบแสดงความคิดเห็นScrollViewเพื่อดูว่าทำงานได้อย่างถูกต้อง กิจกรรม: package com.ss.activities; import com.ss.R; import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import android.os.Parcelable; import android.support.v4.view.PagerAdapter; …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.