스피너가있는 대화 상자가 있습니다. 현재 대화 상자와 회 전자가 잘 작동합니다. 그러나 항목을 선택하면 회 전자가 닫히지 않습니다. 나는 그것이 가까이에 있어야하고, 항목이 선택되면 활동으로 돌아갈 필요가있다. 감사.사용자가 회 전자에서 항목을 선택한 후 대화 상자를 닫는 방법?
다음은 대화 상자 코드입니다.
String[] s = {"A", "B", "C", "D", "E", "F" };
final ArrayAdapter<String> adp = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_spinner_item, s);
final Spinner sp = new Spinner(getActivity());
//sp.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
sp.setAdapter(adp);
sp.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
String selectedItem = parent.getItemAtPosition(position).toString();
Log.d("selectedItem:", selectedItem);
} // to close the onItemSelected
public void onNothingSelected(AdapterView<?> parent)
{
}
});
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setView(sp);
builder.create().show();
항목을 선택하면 닫히지 않습니다. 대화 상자가 아직 선언되지 않았으므로 회 전자 선택 메소드에서 builder.dismiss()를 호출하려면 어떻게해야합니까? – Julia
@Julia 글쎄, 그 자체를 닫아야한다, 그러면 아마도 대화를 무시하는 것으로 충분할 것인가? 대화 상자를 처음 만들었을 때 대화 상자를 닫고 대화 상자를 추가 한 다음 회 전자를 추가하면 회 전자가 표시되고 사용자가 항목에서 실제로 클릭 할 수 있고 호출 된 OnItemSelected 메서드가 표시되어 대화 상자가 이미 초기화되어 있으므로 초기화 할 수 있습니다. 그냥 대화 상자 인스턴스화를 변경해야합니다 .... 나는 대답을 업데이 트합니다. 작동하는지 알려주세요. – Rainmaker