ฉันต้องการเพิ่มไอคอน "ค้นหา" เพื่อให้ปรากฏภายในEditTextด้านซ้ายหรือไม่ เช่นกล่องค้นหาในแอพ Facebook Android?
ฉันต้องการเพิ่มไอคอน "ค้นหา" เพื่อให้ปรากฏภายในEditTextด้านซ้ายหรือไม่ เช่นกล่องค้นหาในแอพ Facebook Android?
คำตอบ:
ใช้android:drawableLeftคุณสมบัติบน EditText
<EditText
...
android:drawableLeft="@drawable/my_icon" />
drawablePaddingคุณสมบัติ
คุณสามารถตั้งค่า drawableLeft ใน XML ตามที่marcosแนะนำแต่คุณอาจต้องการตั้งค่าแบบเป็นโปรแกรมเช่นในการตอบกลับเหตุการณ์ เมื่อต้องการทำสิ่งนี้ให้ใช้เมธอดsetCompoundDrawablesWithIntrincisBounds (int, int, int, int) :
EditText editText = findViewById(R.id.myEditText);
// Set drawables for left, top, right, and bottom - send 0 for nothing
editTxt.setCompoundDrawablesWithIntrinsicBounds(R.drawable.myDrawable, 0, 0, 0);
nullเมื่อมีการคลิกมุมมอง
หากคุณต้องการใช้ drawable เริ่มต้นของ Android คุณสามารถใช้@android:drawable/ic_menu_searchสิ่งนี้:
<EditText android:id="@+id/inputSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawableLeft="@android:drawable/ic_menu_search"
android:hint="Search product.."
android:inputType="textVisiblePassword"/>
การใช้:
<EditText
..
android:drawableStart="@drawable/icon" />
ใช้เค้าโครงที่สัมพันธ์กันและตั้งค่าปุ่มให้จัดชิดซ้ายของมุมมองแก้ไขข้อความและตั้งค่าการขยายด้านซ้ายของมุมมองข้อความเป็นขนาดของปุ่มของคุณ ฉันไม่สามารถคิดวิธีที่ดีในการทำโดยไม่ต้องเข้ารหัส padding อย่างหนัก: /
นอกจากนี้คุณยังสามารถใช้เครื่องมือ apkเพื่อแยกไฟล์ zip ของ Facebook และดูที่ไฟล์เลย์เอาต์
ใช้android: drawbleStart propery บน EditText
<EditText
...
android:drawableStart="@drawable/my_icon" />