0
사용자가 로그인 및 암호를 설정하는 첫 번째 활동이 있습니다. 그런 다음 그는 "OK"를 클릭하여 키보드가 열리고 B 액티비티에 도착합니다. B 액티비티의 onCreate에서 DialogFrament를 표시하지만 DialogFragment를 숨길 때까지 키보드가 열립니다.DialogFragment를 표시하기 전에 키보드 숨기기
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GeolocalisationDialog geoDlg = new GeolocalisationDialog();
geoDlg.show(getSupportFragmentManager(), "geoDlg");
}
내 질문은 내가 DialogFragment를 표시하기 전에 키보드를 숨길 수있는 방법인가?
추신 : 내가 안드로이드 설정하려고했습니다 : 내 DialogFrament는 기본 DialogFragment에게
public class GeolocalisationDialog extends DialogFragment {
private static DialogClickListener callback;
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
try {
callback = (DialogClickListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString() + " must implement DialogClickListener");
}
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage(R.string.authorize_geoloc)
.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
callback.onYesClick();
}
})
.setNegativeButton(R.string.refuse, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
callback.onNoClick();
}
});
return builder.create();
}
}
PS2입니다 windowSoftInputMode = "stateHidden"를 매니페스트에 그것은 다음
활동 A 또는 B에서? 정확하게 DialogFragment를 표시하지 않으면 새로운 활동이 시작될 때 키보드가 자동으로 숨겨집니다. – mrroboaat
'확인'버튼 onClick 내에서이 작업을 수행 할 수 있습니다 (문제가있는 것으로 보이는 경우). 그 후 사용자가 암호 입력을 마쳤다고 가정합니다. 첫 번째 활동에서 그렇게하십시오. 'yourEditText'는 암호 필드의 EditText가 될 수 있습니다. –