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

โครงร่างกำหนดโครงสร้างที่มองเห็นได้สำหรับส่วนติดต่อผู้ใช้เช่น UI สำหรับกิจกรรมส่วนหรือวิดเจ็ตแอป

3
แสดงตัวอย่างเค้าโครงด้วยการผสานแท็กรูทใน Intellij IDEA / Android Studio
ลองจินตนาการว่าเรากำลังพัฒนาส่วนประกอบเชิงซ้อนโดยใช้ LinearLayout ดังนั้นเราจึงสร้างคลาสดังนี้: public class SomeView extends LinearLayout { public SomeView(Context context, AttributeSet attrs) { super(context, attrs); setOrientation(LinearLayout.VERTICAL); View.inflate(context, R.layout.somelayout, this); } } หากเราจะใช้LinearLayoutเป็นรูทของsomelayout.xmlเราจะมีระดับมุมมองเพิ่มเติมดังนั้นเราจึงใช้แท็กผสาน: <?xml version="1.0" encoding="utf-8"?> <merge xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some text" android:textSize="20sp"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some other text"/> </merge> แต่ในแท็บดูตัวอย่างในการผสาน IDE จะทำหน้าที่เป็น FrameLayout เสมอและเราจะเห็นสิ่งต่อไปนี้: (มันเป็น …

8
กิจกรรมเดียวและชิ้นส่วนอื่น ๆ ทั้งหมด [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันคิดของการใช้หน้าจอเดียวกับActivityและ sreens อื่น ๆ ทั้งหมดที่มีและFragmentsmanaging all the fragments thru the activity มันเป็นความคิดที่ดีหรือไม่? และคำตอบของฉันคือไม่แต่ก็ยังต้องการทราบเพิ่มเติมเกี่ยวกับความคิดนี้อย่างชัดเจน ข้อดีและข้อเสียของความคิดคืออะไร บันทึก: กรุณาอย่าให้ลิงค์สำหรับชิ้นส่วนและกิจกรรม แก้ไข: นี่คือบางส่วนของแฟรกเมนต์และกิจกรรม: ข้อดี: แฟรกเมนต์มีวัตถุประสงค์เพื่อใช้กับกิจกรรมเป็นกิจกรรมย่อย แฟรกเมนต์ไม่ใช่สิ่งทดแทนกิจกรรม แฟรกเมนต์มีความหมายสำหรับการนำมาใช้ใหม่ (จำเป็นต้องรู้ในสิ่งที่สามารถนำมาใช้ซ้ำได้) แฟรกเมนต์เป็นวิธีที่ดีที่สุดในการเขียนโค้ดเพื่อรองรับทั้งแท็บเล็ตและโทรศัพท์ จุดด้อย: เราจำเป็นต้องใช้อินเทอร์เฟซเพื่อรับข้อมูลจากแฟรกเมนต์ สำหรับการสนทนาเราต้องแสดงให้ไกล ทำไมเราควรใช้เศษถ้าเราไม่ได้พิจารณาแท็บเล็ต? เวลาเริ่มต้นแตกต่างกันระหว่างกิจกรรมและส่วนใด

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" …

3
ขอบในรูปร่าง xml
ฉันกำลังพยายามทำให้ drawable ใช้สำหรับปุ่ม ฉันต้องการให้สีนี้มีเส้นขอบ 2px รอบ ๆ ทุกอย่างใช้งานได้ดียกเว้นฉันไม่สามารถแสดงชายแดนได้ <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <gradient android:startColor="@color/bar_clicked_dark" android:endColor="@color/bar_clicked_light" android:angle="90"/> <corners android:bottomLeftRadius="0dp" android:topLeftRadius="15dp" android:bottomRightRadius="15dp" android:topRightRadius="0dp" /> <stroke android:width="2dp" color="#ff00ffff" /> </shape>

19
Android Spinner: หลีกเลี่ยงการโทร onItemSelected ระหว่างการเริ่มต้น
ฉันสร้างโปรแกรม Android ด้วยและSpinner TextViewฉันต้องการแสดงรายการที่เลือกจากรายการดรอปดาวน์ของสปินเนอร์ใน TextView ฉันใช้งานสปินเนอร์ในonCreateวิธีการดังนั้นเมื่อฉันรันโปรแกรมมันจะแสดงค่าในTextView(ก่อนเลือกรายการจากรายการดรอปดาวน์) ฉันต้องการแสดงค่าใน TextView เฉพาะหลังจากเลือกรายการจากรายการแบบหล่นลง ฉันจะทำสิ่งนี้ได้อย่างไร นี่คือรหัสของฉัน: import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; public class GPACal01Activity extends Activity implements OnItemSelectedListener { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { …

13
จะยกเลิกกล่องโต้ตอบโดยคลิกที่ด้านนอกของกล่องโต้ตอบได้อย่างไร
ฉันใช้กล่องโต้ตอบที่กำหนดเองสำหรับแอปพลิเคชันของฉัน ฉันต้องการนำไปใช้เมื่อผู้ใช้คลิกที่นอกกล่องโต้ตอบการสนทนาจะถูกยกเลิก ฉันต้องทำอะไรเพื่อสิ่งนี้

5
วิธีการจัดกึ่งกลางเนื้อหาภายในเค้าโครงเชิงเส้น?
ฉันพยายามที่จะจัดวางImageViewด้านในเป็นLinearLayoutแนวนอนและแนวตั้ง แต่ฉันก็ทำไม่ได้ สาเหตุหลักที่ฉันไม่ได้ใช้RelativeLayoutเพราะเป็นเพราะฉันต้องการlayout_weight(ของฉันActivityประกอบด้วยสี่คอลัมน์ที่ควรแบ่งเท่า ๆ กันและตอบสนองต่อความกว้างของหน้าจอที่แตกต่างกันแต่ละคอลัมน์มีImageViewจุดศูนย์กลางและไม่ยืดออก) นี่คือ xml ของฉันจนถึงตอนนี้: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000" android:baselineAligned="false" android:gravity="center" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".Main" > <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" > <ImageView android:id="@+id/imageButton_speak" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/image_bg" android:src="@drawable/ic_speak" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" > <ImageView android:id="@+id/imageButton_readtext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/image_bg" android:src="@drawable/ic_readtext" /> </LinearLayout> …

4
java.lang.NullPointerException: พยายามเรียกใช้เมธอดเสมือน 'int android.view.View.getImportantForAccessibility ()' ในการอ้างอิงวัตถุ null
ฉันพยายามรวบรวมแอพรายการช็อปปิ้งไว้ด้วยกันโดยอิงจากฟิลด์อินพุต ArrayListListViewและ app Fragmentsที่จะต้องอยู่บนพื้นฐาน อย่างไรก็ตามฉันพบปัญหาและไม่ทราบวิธีการแก้ไข ฉันดูทั้ง Google และ StackOverflow และฉันพบข้อมูลบางอย่าง อย่างไรก็ตามฉันไม่ได้ไปทำงาน ตอนนี้ฉันหวังว่าฉันจะได้รับความช่วยเหลือเกี่ยวกับรหัสของฉัน ฉันค่อนข้างไม่มีประสบการณ์ในการพัฒนา Android Main.java import java.util.ArrayList; import android.app.Fragment; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.Menu; import android.view.MenuItem; public class Main extends FragmentActivity { ArrayList<Detail> items = new ArrayList<Detail>(); FragmentManager FM; FragmentTransaction FT; Input input = new …

15
Android - วิธีการสร้างข้อ จำกัด เลื่อนออก?
ฉันต้องการสร้างเลย์เอาต์ที่ให้ฉันเลื่อนลงโดยใช้รูปแบบข้อ จำกัด แต่ฉันไม่รู้ว่าจะทำอย่างไร ควรScrollViewเป็นผู้ปกครองของConstraintLayoutเช่นนี้หรือไม่ <?xml version="1.0" encoding="utf-8"?> <ScrollView 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:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true"> <android.support.constraint.ConstraintLayout android:id="@+id/Constraint" android:layout_width="match_parent" android:layout_height="match_parent"/> หรือวิธีอื่น ๆ บางทีใครบางคนสามารถชี้ให้ฉันเป็นแบบฝึกหัดที่ดีเกี่ยวกับเรื่องนี้หรือยกตัวอย่างฉันไม่สามารถหาได้ นอกจากนี้ฉันไม่ทราบว่านี่เป็นข้อผิดพลาดหรือการกำหนดค่าบางอย่างที่ฉันไม่ได้ตั้งค่า แต่ฉันได้เห็นภาพเช่นนี้: ที่มีส่วนประกอบบางส่วนที่อยู่นอกพิมพ์เขียว "สี่เหลี่ยมสีน้ำเงิน" แต่พวกมันสามารถมองเห็นได้ในขณะที่ด้านข้างของฉันถ้าฉันวางองค์ประกอบบน "พื้นที่สีขาว" ฉันไม่สามารถมองเห็นหรือเคลื่อนย้ายไปได้ทุกที่และปรากฏบนต้นไม้องค์ประกอบ . อัปเดต: ฉันพบวิธีที่จะทำให้การเลื่อนเลย์เอาต์ข้อ จำกัด ในเครื่องมือออกแบบโดยใช้แนวนอนเพื่อดันขอบเลย์เอาต์ของข้อ จำกัด และขยายมันเกินกว่าอุปกรณ์หลังจากนั้นคุณสามารถใช้แนวทางเป็นด้านล่างใหม่ของโครงร่างข้อ จำกัด เพื่อ ยึดส่วนประกอบ

5
Android - เพิ่มมุมมองลงในมุมมองแบบไดนามิก
ฉันมีเลย์เอาต์สำหรับการดู - <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="0px" android:orientation="vertical"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/items_header" style="@style/Home.ListHeader" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/items_none" android:visibility="gone" style="@style/TextBlock" android:paddingLeft="6px" /> <ListView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/items_list" /> </LinearLayout> สิ่งที่ฉันอยากทำคืออยู่ในกิจกรรมหลักของฉันโดยมีเค้าโครงดังนี้ <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="0px" android:id="@+id/item_wrapper"> </LinearLayout> ฉันต้องการวนลูปผ่านโมเดลข้อมูลของฉันและแทรกมุมมองหลายมุมมองซึ่งประกอบด้วยเลย์เอาต์แรกในเลย์เอาต์หลัก ฉันรู้ว่าฉันสามารถทำได้โดยการสร้างส่วนควบคุมภายในรหัสอย่างสมบูรณ์ แต่ฉันสงสัยว่ามีวิธีสร้างมุมมองแบบไดนามิกหรือไม่เพื่อให้ฉันสามารถใช้เค้าโครงต่อไปแทนที่จะใส่ทุกอย่างในรหัส

5
เพิ่มระยะขอบด้านบนรายการมุมมองด้านบน (และด้านล่างสุดท้าย) ใน Android
นี่เป็นคำถามที่ค่อนข้างดีเกี่ยวกับเลย์เอาต์ของรายการใน ListView ใน Android ฉันมีกิจกรรมที่มีแถบชื่อเรื่องที่ด้านบนและ ListView ทำให้ส่วนที่เหลือของหน้าจอ ฉันต้องการให้ ListView ของฉันปรากฏพร้อมกับการขยาย 10dp ที่ด้านซ้ายขวาและบนสุด แต่เมื่อคุณเลื่อน ListView ขึ้นไปฉันต้องการให้มันครอบคลุมการขยาย 10dp ด้านบนก่อนที่จะหายไปภายใต้ขอบจาง ๆ ในทำนองเดียวกันเมื่อคุณเลื่อนไปที่ด้านล่างรายการสุดท้ายควรปรากฏพร้อม 10dp ระหว่างด้านล่างของรายการสุดท้ายและด้านล่างของหน้าจอจริง (ถ้าคุณสงสัยว่าทำไมเพราะเป็นภาพพื้นหลังสวยที่ฉันต้องการ โผล่ออกมารอบ ๆ ListView) ฉันได้ลองเพิ่มการเติมเข้าไปใน ListView ด้วยตัวเองแล้ว แต่เมื่อคุณเลื่อนรายการมันจะหายไปใต้ขอบของการเติม ฉันมาจากพื้นหลังการพัฒนาเว็บและการเปรียบเทียบจะเป็นการเพิ่มระยะขอบเหนือรายการในรายการแรก (และด้านล่างของรายการสุดท้าย)

18
ลบไอคอน / โลโก้จากแถบการกระทำบน Android
ฉันพยายามหาวิธีลบไอคอน / โลโก้ออกจากแถบแอ็คชัน แต่สิ่งเดียวที่ฉันพบหลังจากใช้เวลาค้นหาไฟล์เอกสารของ Android และ Google เป็นเวลาหนึ่งชั่วโมงคือวิธีลบแถบชื่อออกทั้งหมด นั่นไม่ใช่สิ่งที่ฉันต้องการ ต้องการลบไอคอน / โลโก้ออกจากแถบหัวเรื่องเท่านั้น มีใครรู้วิธีการทำเช่นนี้? โดยเฉพาะอย่างยิ่งผมอยากจะทำเช่นนี้ในXML

19
ย้ายเค้าโครงขึ้นเมื่อซอฟต์คีย์บอร์ดแสดงขึ้น?
ฉันมีองค์ประกอบบางอย่างใน RelativeView ที่มีชุดแอตทริบิวต์จัดตำแหน่งด้านล่างเมื่อแป้นพิมพ์อ่อนขึ้นมาองค์ประกอบต่างๆจะซ่อนอยู่โดยแป้นพิมพ์อ่อน ฉันต้องการให้พวกเขาเลื่อนขึ้นเพื่อที่ว่าหากมีพื้นที่หน้าจอเพียงพอที่จะแสดงเหนือแป้นพิมพ์หรือเพื่อให้ส่วนเหนือแป้นพิมพ์สามารถเลื่อนได้เพื่อให้ผู้ใช้ยังคงเห็นองค์ประกอบต่างๆ มีความคิดอย่างไรกับวิธีการนี้?

11
RecyclerView ขยาย / ยุบรายการ
ฉันต้องการขยาย / ยุบรายการ recyclerView ของฉันเพื่อแสดงข้อมูลเพิ่มเติม ฉันต้องการที่จะบรรลุผลเช่นเดียวกันของSlideExpandableListView โดยทั่วไปในมุมมองของฉันโฟลเดอร์ฉันมีมุมมองที่มองไม่เห็นและฉันต้องการที่จะทำภาพเคลื่อนไหวขยาย / ยุบอย่างราบรื่นมากกว่าตั้งค่าการมองเห็นเป็น VISIBLE / GONE เท่านั้น ฉันต้องการเพียงแค่รายการที่จะขยายในเวลาและมันจะเจ๋งที่จะมีระดับความสูงเพื่อแสดงว่ารายการที่เลือก มันเป็นผลเช่นเดียวกันของรายการประวัติการโทรล่าสุดของ Android ตัวเลือก "การโทรกลับ" และ "รายละเอียด" จะปรากฏให้เห็นเฉพาะเมื่อมีการเลือกรายการ


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