0
Androids AlertDialog
빌더를 활용하고 싶지만 사용자가 검색 키를 누를 때도 잡으려고합니다. 나는 커스텀 대화 상자에서 그것을 할 수 있지만, 어떻게해야 할지를 알 수 없다. 여기에 사용자 정의 섹션 내 코드 (I 사용자 정의에 대한 레이아웃이 없다) 주석 :경고 대화 상자에서 검색 키를 누르고 처리 할 수 있습니까?
public static boolean show(final Activity activity) {
final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(activity);
if (!preferences.getBoolean(ACCUWX.Preferences.PREFERENCE_EULA_ACCEPTED, false)) {
final TextView message = new TextView(activity);
final SpannableString s =
new SpannableString(activity.getText(R.string.eula_terms_info));
Linkify.addLinks(s, Linkify.WEB_URLS);
message.setPadding(10, 10, 10, 10);
message.setText(s);
message.setTextColor(Color.GRAY);
message.setMovementMethod(LinkMovementMethod.getInstance());
mAd = new AlertDialog.Builder(activity);
mAd.setTitle(R.string.terms_conditions);
mAd.setCancelable(false);
mAd.setPositiveButton(R.string.agree, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
accept(preferences);
if (activity instanceof OnEulaAgreedTo) {
((OnEulaAgreedTo) activity).onEulaAgreedTo();
}
}
})
.setNegativeButton(R.string.disagree, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
reject(activity);
}
})
.setOnCancelListener(new DialogInterface.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
refuse(activity);
}
})
.setView(message)
.create();
mAd.show();
return false;
}
return true;
}
는 대화입니다 :
Dialog dialog = new Dialog(activity) {
@Override
public boolean onKeyDown(int keyCode,
KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_SEARCH)
{
System.out.println("----- ignore search pressed");
return true;
}
return false;
}
};
dialog.setContentView(R.layout.terms_and_conditions_dialog);
dialog.setTitle(R.string.terms_conditions);
dialog.setCancelable(false);
dialog.show();