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

คำถามเกี่ยวกับองค์ประกอบ android.widgetbutton องค์ประกอบนี้สามารถใช้กับกิจกรรมต่างๆ

22
วิธีเริ่มกิจกรรมใหม่เมื่อคลิกปุ่ม
ในแอปพลิเคชัน Android คุณจะเริ่มกิจกรรมใหม่ (GUI) อย่างไรเมื่อคลิกปุ่มในกิจกรรมอื่นและคุณส่งข้อมูลระหว่างกิจกรรมทั้งสองนี้อย่างไร


20
ทำไมข้อความปุ่มของฉันถูกบังคับให้ CAPS ทั้งหมดบน Lollipop?
ในแอพของฉัน"Tide Now WA"ซึ่งฉันเพิ่งทดสอบความเข้ากันได้กับแท็บเล็ต Nexus 9 ใหม่ (Lollipop - API 21) มันเขียนข้อความปุ่ม แอพนี้เขียนข้อความอย่างถูกต้องโดยใช้ Android 2.3 และ Android 4.0 เช่นตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก เมื่อแอพเดียวกันทำงานบน Nexus 9 ตัวอักษรทั้งหมดในข้อความจะเป็นตัวพิมพ์ใหญ่ FWIW รายการของฉันมีคำสั่งต่อไปนี้: uses-sdk android:minSdkVersion="10" android:targetSdkVersion="14" ฉันสามารถแก้ไขได้ในรหัสของฉันหรือเป็นข้อบกพร่องในระบบปฏิบัติการขอบคุณ

11
รูปแบบปุ่มการออกแบบวัสดุ Android
ฉันสับสนกับรูปแบบปุ่มสำหรับการออกแบบวัสดุ ฉันต้องการรับปุ่มยกสีสันในลิงก์ที่แนบมาเช่นปุ่ม "บังคับหยุด" และ "ถอนการติดตั้ง" ที่เห็นในส่วนการใช้งาน มีสไตล์ที่พร้อมใช้งานหรือฉันต้องกำหนดมันหรือไม่? http://www.google.com/design/spec/components/buttons.html#buttons-usage ฉันหาสไตล์ปุ่มเริ่มต้นไม่พบ ตัวอย่าง: <Button style="@style/PrimaryButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Calculate" android:id="@+id/button3" android:layout_below="@+id/editText5" android:layout_alignEnd="@+id/editText5" android:enabled="true" /> หากฉันพยายามเปลี่ยนสีพื้นหลังของปุ่มด้วยการเพิ่ม android:background="@color/primary" สไตล์ทั้งหมดหายไปเช่นแอนิเมชั่นระบบสัมผัสเงามุมมนเป็นต้น

28
ปุ่มระบายสีใน Android ที่มีการออกแบบวัสดุและ AppCompat
ก่อนที่การAppCompatอัปเดตจะออกมาในวันนี้ฉันสามารถเปลี่ยนสีของปุ่มต่างๆใน Android L ได้ แต่ไม่ใช่รุ่นเก่ากว่า หลังจากรวมการอัปเดต AppCompat ใหม่แล้วฉันไม่สามารถเปลี่ยนสีสำหรับรุ่นใดรุ่นหนึ่งได้เมื่อฉันลองใช้งานปุ่มจะหายไป ไม่มีใครรู้วิธีเปลี่ยนสีปุ่ม? ภาพต่อไปนี้แสดงสิ่งที่ฉันต้องการบรรลุ: ปุ่มสีขาวเป็นค่าเริ่มต้นปุ่มสีแดงเป็นสิ่งที่ฉันต้องการ นี่คือสิ่งที่ฉันทำก่อนหน้านี้เพื่อเปลี่ยนสีของปุ่มในstyles.xml: <item name="android:colorButtonNormal">insert color here</item> และจะทำแบบไดนามิก: button.getBackground().setColorFilter(getResources().getColor(insert color here), PorterDuff.Mode.MULTIPLY); นอกจากนี้ฉันเปลี่ยนชุดรูปแบบของแม่จาก@android:style/Theme.Material.Light.DarkActionBarเป็นTheme.AppCompat.Light.DarkActionBar

10
แทนที่ปุ่มย้อนกลับเพื่อทำหน้าที่เหมือนปุ่มโฮม
เมื่อกดปุ่มย้อนกลับฉันต้องการให้แอปพลิเคชันของฉันเข้าสู่สถานะหยุดทำงานแทนที่จะเป็นสถานะที่ถูกทำลาย ในเอกสาร Android มันระบุ: ... ไม่ใช่ทุกกิจกรรมที่มีพฤติกรรมที่ถูกทำลายเมื่อกด BACK เมื่อผู้ใช้เริ่มเล่นเพลงในแอปพลิเคชั่น Music แล้วกด BACK แอพพลิเคชั่นจะแทนที่พฤติกรรมปกติหลังป้องกันไม่ให้กิจกรรมของผู้เล่นถูกทำลายและเล่นเพลงต่อไปแม้ว่ากิจกรรมจะไม่ปรากฏให้เห็นอีกต่อไป ฉันจะทำซ้ำฟังก์ชั่นนี้ในแอปพลิเคชันของตัวเองได้อย่างไร ฉันคิดว่าต้องมีความเป็นไปได้สามอย่าง ... จับปุ่มย้อนกลับกด (ตามด้านล่าง) แล้วเรียกวิธีการใด ๆ ที่ปุ่มโฮมเรียก @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { Log.d(this.getClass().getName(), "back button pressed"); } return super.onKeyDown(keyCode, event); } จับการกดปุ่มย้อนกลับจากนั้นหลอกการกดปุ่มโฮม บันทึกการกดปุ่มย้อนกลับจากนั้นเริ่มกิจกรรมของหน้าจอหลักทำให้กิจกรรมของแอปพลิเคชันของฉันเข้าสู่สถานะหยุดทำงานได้อย่างมีประสิทธิภาพ แก้ไข: ฉันรู้เกี่ยวกับบริการและกำลังใช้งานแอปพลิเคชันที่เกี่ยวข้องกับปัญหานี้ คำถามนี้เกี่ยวกับการทำให้กิจกรรมเข้าสู่สถานะหยุดแทนที่จะเป็นสถานะทำลายเมื่อกดปุ่มย้อนกลับ

5
ปุ่มปรับแต่ง Android; เปลี่ยนสีข้อความ
ฉันสร้างปุ่มที่เปลี่ยนพื้นหลังที่สามารถวาดได้ในสถานะต่างๆด้วยวิธีนี้ <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/btn_location_pressed" /> <!-- pressed --> <item android:state_focused="true" android:drawable="@drawable/btn_location_pressed"/> <!-- focused --> <item android:drawable="@drawable/btn_location"/> <!-- default --> ปัญหาที่นี่คือฉันยังพยายามเปลี่ยน textColor เช่นเดียวกับ drawable แต่ฉันไม่สามารถ ฉันลองใช้ android แล้ว: textColor และ android: color แต่อันแรกไม่ทำงานในขณะที่วินาทีเปลี่ยนพื้นหลังของฉัน รหัสต่อไปเป็นส่วนหนึ่งของเค้าโครงของฉัน เกี่ยวกับสีข้อความมันใช้งานได้กับสีข้อความสถานะปกติเท่านั้นดังนั้นจึงไม่เปลี่ยนเป็นสีขาวในขณะที่กด <Button android:id="@+id/location_name" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="5dp" android:background="@drawable/location" android:textSize="15sp" android:textColor="@color/location_color" android:textColorHighlight="#FFFFFF" /> มีใครได้รับเบาะแสหรือไม่?

6
ปุ่มวงกลมที่กำหนดเอง
ฉันต้องการสร้างปุ่มที่กำหนดเองและฉันต้องการให้มันเป็นวงกลม ฉันจะสร้างปุ่มวงกลมได้อย่างไร ฉันไม่คิดว่าเป็นไปได้ด้วย draw9patch นอกจากนี้ฉันไม่ทราบวิธีการทำปุ่มที่กำหนดเอง! คุณมีข้อเสนอแนะใด ๆ ?



10
จะเพิ่มปุ่มใน PreferenceScreen ได้อย่างไร?
ฉันค่อนข้างใหม่สำหรับการพัฒนา Android และเพิ่งเจอ Preferences ฉันพบPreferenceScreenและต้องการสร้างฟังก์ชันการเข้าสู่ระบบด้วย ปัญหาเดียวที่ฉันมีคือฉันไม่รู้ว่าจะเพิ่มปุ่ม "เข้าสู่ระบบ" ลงในไฟล์PreferenceScreen. นี่คือPreferenceScreenลักษณะของฉัน: <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> ... <PreferenceScreen android:title="@string/login" android:key="Login"> <EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference> <EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference> </PreferenceScreen> ... </PreferenceScreen> ปุ่มควรอยู่ใต้สองEditTextPreferenceวินาที มีวิธีง่ายๆสำหรับปัญหานี้หรือไม่? วิธีแก้ปัญหาเดียวที่ฉันพบไม่ทำงานเพราะฉันใช้ sub PreferenceScreens อัปเดต: ฉันคิดว่าฉันสามารถเพิ่มปุ่มได้ด้วยวิธีนี้: <PreferenceScreen android:title="@string/login" android:key="Login"> <EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference> <EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference> <Preference android:layout="@layout/loginButtons" android:key="loginButtons"></Preference> </PreferenceScreen> …

5
การเชื่อมโยงข้อมูล Android โดยใช้แท็กรวม
อัปเดตหมายเหตุ: ตัวอย่างข้างต้นทำงานได้อย่างถูกต้องเนื่องจากรีลีส 1.0-rc4 แก้ไขปัญหาการต้องการตัวแปรที่ไม่จำเป็น คำถามเดิม: ฉันทำตามที่อธิบายไว้ในเอกสารและไม่ได้ผล: main.xml: <layout xmlns:andr... <data> </data> <include layout="@layout/buttons"></include> .... buttons.xml: <layout xmlns:andr...> <data> </data> <Button android:id="@+id/button" ...." /> MyActivity.java: ... binding = DataBindingUtil.inflate... binding.button; ->cannot resolve symbol 'button' วิธีรับปุ่ม?


10
Android: วิธีจัดการกับการคลิกปุ่ม
มีประสบการณ์ที่มั่นคงในพื้นที่ที่ไม่ใช่ Java และไม่ใช่ Android ฉันกำลังเรียนรู้ Android ฉันมีความสับสนอย่างมากกับพื้นที่ต่างๆหนึ่งในนั้นคือวิธีจัดการกับการคลิกปุ่ม มีอย่างน้อย 4 วิธีในการทำ (!!!) ซึ่งระบุไว้สั้น ๆที่นี่ เพื่อความสอดคล้องฉันจะแสดงรายการ: มีสมาชิกของView.OnClickListenerชั้นเรียนในกิจกรรมและกำหนดให้กับอินสแตนซ์ที่จะจัดการonClickตรรกะในonCreateวิธีการของกิจกรรม สร้าง 'onClickListener' ในวิธีกิจกรรม 'onCreate' และกำหนดให้กับปุ่มโดยใช้ setOnClickListener ใช้ 'onClickListener' ในกิจกรรมเองและกำหนดให้ 'this' เป็นผู้ฟังสำหรับปุ่ม ในกรณีที่กิจกรรมมีปุ่มไม่กี่ปุ่มควรวิเคราะห์รหัสปุ่มเพื่อเรียกใช้ตัวจัดการ 'onClick' สำหรับปุ่มที่เหมาะสม มีวิธีการสาธารณะในกิจกรรมที่ใช้ตรรกะ 'onClick' และกำหนดให้กับปุ่มในการประกาศ xml ของกิจกรรม คำถามที่ 1: วิธีการทั้งหมดนั้นมีทางเลือกอื่นหรือไม่? (ฉันไม่ต้องการอย่างอื่นแค่อยากรู้อยากเห็น) สำหรับฉันวิธีที่เข้าใจง่ายที่สุดคือวิธีใหม่ล่าสุด: ต้องพิมพ์โค้ดให้น้อยที่สุดและอ่านได้ง่ายที่สุด (อย่างน้อยสำหรับฉัน) แม้ว่าฉันจะไม่เห็นวิธีนี้ใช้กันอย่างแพร่หลาย ข้อเสียสำหรับการใช้งานคืออะไร? คำถาม # 2: ข้อดี / ข้อเสียของแต่ละวิธีคืออะไร? โปรดแบ่งปันประสบการณ์ของคุณหรือลิงก์ที่ดี …

6
ปุ่ม Android พร้อมไอคอนและข้อความ
ฉันมีปุ่มแบบนี้ในแอปของฉัน: <Button android:id="@+id/bSearch" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="16dp" android:text="Search" android:textSize="24sp" /> ฉันพยายามสร้างปุ่มเดียวกันกับข้อความและไอคอน android: drawableLeft ใช้ไม่ได้สำหรับฉัน (อาจจะเป็นไปได้ แต่ฉันไม่รู้วิธีตั้งค่าความสูงสูงสุดให้กับไอคอน) ดังนั้นฉันจึงสร้าง LinearLayout ด้วย ImageView และ TextView และทำให้มันทำหน้าที่เหมือนปุ่ม: <LinearLayout android:id="@+id/bSearch2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@android:drawable/btn_default" android:clickable="true" android:padding="16dp" android:orientation="horizontal" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginLeft="5dp" android:adjustViewBounds="true" android:maxHeight="30dp" android:maxWidth="30dp" android:scaleType="fitCenter" android:src="@drawable/search_icon" /> <TextView android:id="@+id/tvSearchCaption" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:textSize="24sp" android:paddingRight="30dp" android:gravity="center" …

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