ฉันจะใช้การตั้งค่าที่แสดงกล่องโต้ตอบการยืนยันใช่ / ไม่ใช่แบบธรรมดาได้อย่างไร
Browser->Setting->Clear Cache
ยกตัวอย่างให้ดู
ฉันจะใช้การตั้งค่าที่แสดงกล่องโต้ตอบการยืนยันใช่ / ไม่ใช่แบบธรรมดาได้อย่างไร
Browser->Setting->Clear Cache
ยกตัวอย่างให้ดู
คำตอบ:
นั่นคือกล่องโต้ตอบการแจ้งเตือนที่เรียบง่ายFederico มอบไซต์ที่คุณสามารถค้นหาสิ่งต่างๆได้
นี่คือตัวอย่างสั้น ๆ ของวิธีสร้างกล่องโต้ตอบการแจ้งเตือน
new AlertDialog.Builder(this)
.setTitle("Title")
.setMessage("Do you really want to whatever?")
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Toast.makeText(MainActivity.this, "Yaay", Toast.LENGTH_SHORT).show();
}})
.setNegativeButton(android.R.string.no, null).show();
Android มาพร้อมกับคลาส YesNoPreference ในตัวที่ตอบสนองสิ่งที่คุณต้องการ (กล่องโต้ตอบยืนยันพร้อมตัวเลือกใช่และไม่ใช่) ดูรหัสที่มาอย่างเป็นทางการที่นี่
ขออภัยอยู่ในcom.android.internal.preference
แพ็คเกจซึ่งหมายความว่าเป็นส่วนหนึ่งของ API ส่วนตัวของ Android และคุณไม่สามารถเข้าถึงได้จากแอปพลิเคชันของคุณ (คลาส API ส่วนตัวอาจเปลี่ยนแปลงได้โดยไม่ต้องแจ้งให้ทราบล่วงหน้าด้วยเหตุนี้ Google จึงไม่อนุญาตให้คุณเข้าถึง)
วิธีแก้ไข:เพียงสร้างคลาสใหม่ในแพ็คเกจแอปพลิเคชันของคุณโดยคัดลอก / วางซอร์สโค้ดอย่างเป็นทางการจากลิงค์ที่ฉันให้ไว้ ฉันได้ลองสิ่งนี้แล้วและใช้งานได้ดี (ไม่มีเหตุผลว่าทำไมจึงไม่ควรทำ)
จากนั้นคุณสามารถเพิ่มลงในpreferences.xml
ความชอบอื่น ๆ ของคุณได้ ตัวอย่าง:
<com.example.myapp.YesNoPreference
android:dialogMessage="Are you sure you want to revert all settings to their default values?"
android:key="com.example.myapp.pref_reset_settings_key"
android:summary="Revert all settings to their default values."
android:title="Reset Settings" />
ซึ่งมีลักษณะดังนี้:
ใช้ Intent Preference หากคุณกำลังใช้หน้าจอ xml ค่ากำหนดหรือคุณกำลังใช้หน้าจอที่กำหนดเองโค้ดจะเป็นดังนี้
intentClearCookies = getPreferenceManager().createPreferenceScreen(this);
Intent clearcookies = new Intent(PopupPostPref.this, ClearCookies.class);
intentClearCookies.setIntent(clearcookies);
intentClearCookies.setTitle(R.string.ClearCookies);
intentClearCookies.setEnabled(true);
launchPrefCat.addPreference(intentClearCookies);
จากนั้นสร้างคลาสกิจกรรมคล้าย ๆ ด้านล่างเนื่องจากต่างคนต่างเป็นแนวทางที่แตกต่างกันคุณสามารถใช้แนวทางใดก็ได้ที่คุณต้องการนี่เป็นเพียงตัวอย่างเท่านั้น
public class ClearCookies extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
showDialog();
}
/**
* @throws NotFoundException
*/
private void showDialog() throws NotFoundException {
new AlertDialog.Builder(this)
.setTitle(getResources().getString(R.string.ClearCookies))
.setMessage(
getResources().getString(R.string.ClearCookieQuestion))
.setIcon(
getResources().getDrawable(
android.R.drawable.ic_dialog_alert))
.setPositiveButton(
getResources().getString(R.string.PostiveYesButton),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
//Do Something Here
}
})
.setNegativeButton(
getResources().getString(R.string.NegativeNoButton),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
//Do Something Here
}
}).show();
}}
อย่างที่บอกไปก่อนหน้านี้มีหลายวิธีที่ทำได้ นี่เป็นวิธีหนึ่งที่คุณสามารถทำงานของคุณได้โปรดยอมรับคำตอบหากคุณรู้สึกว่าได้สิ่งที่คุณต้องการแล้ว