คำถามติดแท็ก user-interface

User Interface (UI) เป็นระบบที่ผู้ใช้โต้ตอบกับคอมพิวเตอร์ แท็กนี้สามารถใช้สำหรับคำถามการเขียนโปรแกรมที่เกี่ยวข้องกับ UI โปรดทราบว่ามีไซต์ Stack Exchange แยกต่างหากสำหรับอินเทอร์เฟซผู้ใช้การโต้ตอบกับคอมพิวเตอร์และการออกแบบประสบการณ์ผู้ใช้: https://ux.stackexchange.com


24
MVP และ MVC คืออะไรและแตกต่างกันอย่างไร
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ เมื่อมองไปไกลกว่าRAD (ลากวางและกำหนดค่า) วิธีการสร้างส่วนติดต่อผู้ใช้ที่เครื่องมือมากมายขอแนะนำให้คุณมีแนวโน้มที่จะเจอสามรูปแบบการออกแบบที่เรียกว่าModel-View-Controller , Model-View-PresenterและModel-View-ViewModel คำถามของฉันมีสามส่วน: รูปแบบเหล่านี้แก้ไขปัญหาใด พวกเขาคล้ายกันอย่างไร แตกต่างกันอย่างไร

30
ฉันจะอัพเดต GUI จากเธรดอื่นได้อย่างไร?
ซึ่งเป็นวิธีที่ง่ายที่สุดในการปรับปรุงLabelจากที่อื่นThread? ฉันมีการFormทำงานthread1และจากที่ฉันเริ่มหัวข้ออื่น ( thread2) ในขณะที่thread2กำลังประมวลผลไฟล์บางไฟล์ฉันต้องการที่จะอัปเดตLabelในFormกับสถานะปัจจุบันของการthread2ทำงานของ ฉันจะทำสิ่งนั้นได้อย่างไร

17
จะสร้าง RecyclerView ด้วยมุมมองหลายประเภทได้อย่างไร
จากhttps://developer.android.com/preview/material/ui-widgets.html เมื่อเราสร้างRecyclerView.Adapterเราจะต้องระบุViewHolderว่าจะผูกกับอะแดปเตอร์ public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> { private String[] mDataset; public MyAdapter(String[] myDataset) { mDataset = myDataset; } public static class ViewHolder extends RecyclerView.ViewHolder { public TextView mTextView; public ViewHolder(TextView v) { super(v); mTextView = v; } } @Override public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View v = …

18
ฉันจะจัดมุมมองที่ด้านล่างของหน้าจอได้อย่างไร
นี่คือรหัสรูปแบบของฉัน <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:text="@string/welcome" android:id="@+id/TextView" android:layout_width="fill_parent" android:layout_height="wrap_content"> </TextView> <LinearLayout android:id="@+id/LinearLayout" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="bottom"> <EditText android:id="@+id/EditText" android:layout_width="fill_parent" android:layout_height="wrap_content"> </EditText> <Button android:text="@string/label_submit_button" android:id="@+id/Button" android:layout_width="wrap_content" android:layout_height="wrap_content"> </Button> </LinearLayout> </LinearLayout> สิ่งนี้ดูเหมือนว่าอยู่ทางซ้ายและสิ่งที่ฉันต้องการให้ดูเหมือนอยู่ทางขวา คำตอบที่ชัดเจนคือการตั้งค่า TextView ให้ fill_parent บนความสูง แต่สิ่งนี้ทำให้ไม่มีที่ว่างเหลือสำหรับปุ่มหรือฟิลด์รายการ โดยพื้นฐานแล้วปัญหาคือฉันต้องการให้ปุ่มส่งและรายการข้อความเป็นความสูงคงที่ที่ด้านล่างและมุมมองข้อความเพื่อเติมเต็มพื้นที่ที่เหลือ ในทำนองเดียวกันในเลย์เอาต์แบบเส้นแนวนอนฉันต้องการให้ปุ่มส่งเพื่อตัดเนื้อหาและสำหรับการป้อนข้อความเพื่อเติมส่วนที่เหลือของพื้นที่ หากรายการแรกในเลย์เอาต์แบบเส้นถูกบอกให้เติม _parent มันจะทำสิ่งนั้นอย่างแน่นอนทำให้ไม่มีที่ว่างสำหรับรายการอื่น ฉันจะรับไอเท็มที่อยู่ในเลย์เอาต์เชิงเส้นก่อนเพื่อเติมช่องว่างทั้งหมดนอกเหนือจากค่าต่ำสุดที่จำเป็นสำหรับรายการที่เหลือในเลย์เอาต์ได้อย่างไร รูปแบบสัมพัทธ์เป็นคำตอบที่แน่นอน: <?xml version="1.0" …


9
การใช้หลาย JFrames: การปฏิบัติดีหรือไม่ดี? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันกำลังพัฒนาแอพพลิเคชั่นที่แสดงภาพและเล่นเสียงจากฐานข้อมูล ฉันกำลังพยายามตัดสินใจว่าจะใช้ JFrame แยกต่างหากเพื่อเพิ่มรูปภาพในฐานข้อมูลจาก GUI หรือไม่ ฉันแค่สงสัยว่ามันเป็นวิธีปฏิบัติที่ดีในการใช้หลายหน้าต่าง JFrame หรือไม่?


30
ฉันจะแสดงค่าปัจจุบันของการตั้งค่า Android ในการสรุปการตั้งค่าได้อย่างไร
เรื่องนี้ต้องเกิดขึ้นบ่อยมาก เมื่อผู้ใช้กำลังแก้ไขการตั้งค่าในแอพ Android ฉันต้องการให้พวกเขาสามารถดูค่าที่กำหนดไว้ในปัจจุบันของการตั้งค่าในการPreferenceสรุป ตัวอย่าง: หากฉันมีการตั้งค่าการตั้งค่าสำหรับ "ทิ้งข้อความเก่า" ที่ระบุจำนวนวันหลังจากที่ต้องล้างข้อความ ในPreferenceActivityฉันต้องการให้ผู้ใช้เห็น: "ยกเลิกข้อความเก่า" <- ชื่อ "ล้างข้อความหลังจากxวัน" <- สรุปโดยที่xคือค่ากำหนดปัจจุบัน เครดิตพิเศษ: ทำให้สามารถนำมาใช้ซ้ำได้ดังนั้นฉันสามารถนำไปใช้กับการตั้งค่าทั้งหมดของฉันได้อย่างง่ายดายโดยไม่คำนึงถึงประเภทของพวกเขา (เพื่อให้ทำงานกับ EditTextPreference, ListPreference ฯลฯ ด้วยการเข้ารหัสน้อยที่สุด)

12
GUI GUI ของ Linux คืออะไร
ฉันหวังว่านี่จะไม่เป็นคำถามที่โง่ แต่ก็เป็นสิ่งที่ฉันสงสัยเสมอ ทั้ง Windows (Win32 API) และ OS X (Cocoa) มี API ของตัวเองเพื่อจัดการ windows เหตุการณ์และระบบปฏิบัติการอื่น ๆ ฉันไม่เคยได้รับคำตอบที่ชัดเจนเลยว่าเทียบเท่ากับ Linux หรือเปล่า ฉันเคยได้ยินบางคนพูดว่า GTK + แต่ GTK + เป็นแพลตฟอร์มข้ามมันเป็นพื้นเมืองได้อย่างไร
441 c++  c  linux  api  user-interface 

15
ฟังก์ชั่นการเขียนโปรแกรม GUI สามารถทำได้หรือไม่? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันเพิ่งเจอข้อผิดพลาด FP (พยายามเรียนรู้ Haskell) และฉันก็ประทับใจกับสิ่งที่ฉันเห็นมามาก (ฟังก์ชั่นชั้นหนึ่งการประเมินที่ขี้เกียจและสารพัดอื่น ๆ ) ฉันยังไม่มีความเชี่ยวชาญ แต่ฉันได้เริ่มเข้าใจแล้วว่าเหตุผล "ตามหน้าที่" ง่ายกว่าเหตุผลสำหรับอัลกอริธึมพื้นฐาน (และฉันมีปัญหาในการกลับไปที่ที่ฉันต้องทำ) พื้นที่หนึ่งที่ FP ในปัจจุบันดูเหมือนจะค่อนข้างแบนอย่างไรก็ตามคือการเขียนโปรแกรม GUI วิธี Haskell ดูเหมือนว่าจะห่อชุดเครื่องมือ GUI ที่จำเป็น (เช่น GTK + หรือ wxWidgets) และใช้บล็อก "do" เพื่อจำลองสไตล์ที่จำเป็น ฉันไม่ได้ใช้ F # แต่ความเข้าใจของฉันคือมันใช้ OOP กับ. NET class เห็นได้ชัดว่ามีเหตุผลที่ดีสำหรับเรื่องนี้ - การเขียนโปรแกรม GUI ปัจจุบันเป็นเรื่องของ …

5
ลิ้นชักการนำทาง (Google+ เทียบกับ YouTube)
ไม่มีใครรู้วิธีการใช้เมนูแบบเลื่อนเช่นแอพยอดนิยมในปัจจุบัน คำถาม Stack Overflow อื่น ๆยังไม่มีคำตอบใด ๆ เกี่ยวกับวิธีการทำเช่นนี้ดังนั้นฉันจึงพยายามรวบรวมข้อมูลเพื่อช่วยผู้อื่น แอพพลิเคชั่นทั้งหมดที่ฉันพูดถึงด้านล่างนี้ทำได้ดีมากในการใช้เมนูสไลด์ 1. Google Plus (ลงวันที่ 7/7/12) คุณสามารถไปจากหน้าจอแรกไปยังหน้าจอที่สองได้โดยคลิกโลโก้ G + ที่มุมซ้ายบน ขอให้สังเกตว่าหน้าจอทั้งหมดย้ายจากตำแหน่งและรับของถูกเลื่อนไปทางด้านขวาของหน้าจอ (รวมถึงแถบการกระทำ) หากต้องการกลับไปที่หน้าจอแรกคุณสามารถเลื่อนด้านขวากลับเข้าสู่การโฟกัสหรือคุณสามารถคลิกที่ไอคอน G + อีกครั้ง 2. YouTube (จนถึง 7/7/12) คุณสามารถเปลี่ยนจากหน้าจอแรกเป็นหน้าจอที่สองโดยใช้สองวิธี คลิกโลโก้ YouTube ที่ด้านซ้ายบนหรือคุณสามารถใช้การเลื่อนนิ้วเพื่อเลื่อนไปทางขวา สิ่งนี้แตกต่างจากแอป G + แล้ว ประการที่สองคุณจะเห็นว่าแถบแอ็คชันยังคงอยู่ (ต่างจาก G +) สุดท้ายเพื่อให้หน้าจอดั้งเดิมกลับมาทำงานเหมือน G +

13
คำศัพท์ UI: เข้าสู่ระบบเทียบกับเข้าสู่ระบบ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันกำลังหัตถกรรมใบสมัครและไม่สามารถตัดสินใจได้ว่าจะใช้คำว่าเข้าสู่ระบบ / ออกหรือเข้าสู่ระบบเปิด / ปิด มีตัวเลือกที่ถูกต้องมากขึ้นระหว่างสองสิ่งนี้หรือไม่? ฉันควรใช้อย่างอื่นทั้งหมด (เช่น "ลงชื่อเข้าใช้ / ปิด") ในแง่ของการใช้งานตราบใดที่ฉันสอดคล้องกันมันอาจไม่สำคัญว่าฉันจะเลือกเงื่อนไขแบบใด แต่ฉันสงสัยเกี่ยวกับต้นกำเนิดของข้อกำหนด - และไม่ว่าอย่างใดอย่างหนึ่งหรืออย่างใดอย่างหนึ่งทำให้รู้สึกทางไวยากรณ์มากขึ้น ฉันยังใส่ใจอย่างลึกซึ้งเกี่ยวกับแอปพลิเคชันที่ฉันสร้างและต้องการใช้เวลาในการตรวจสอบทุกแง่มุมของประสบการณ์การใช้งานของผู้ใช้

9
ฉันจะเปลี่ยนความหนาของแท็ก <hr> ของฉันได้อย่างไร
ฉันต้องการเปลี่ยนความหนาของกฎแนวนอนของฉัน ( &lt;hr&gt;) ใน CSS ฉันรู้ว่ามันสามารถทำได้ในรูปแบบ HTML เช่นนั้น - &lt;hr size="10"&gt; แต่ผมได้ยินว่านี้จะเลิกเป็นที่กล่าวถึงในMDN ที่นี่ ใน CSS ฉันพยายามใช้height:1pxแต่ไม่เปลี่ยนความหนา ฉันต้องการ&lt;hr&gt;เส้น0.5pxหนา ฉันใช้ Firefox 3.6.11 บน Ubuntu
311 html  css  user-interface 

24
เลือกเนื้อหาทั้งหมดของกล่องข้อความเมื่อได้รับการโฟกัส (Vanilla JS หรือ jQuery)
โซลูชัน Vanilla JS หรือ jQuery คืออะไรที่จะเลือกเนื้อหาทั้งหมดของกล่องข้อความเมื่อกล่องข้อความได้รับโฟกัส

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