android 구글 - AlertDialog의 ListView




안드로이드 download (4)

AlertDialog에서 ListView를 사용하여 항목 목록을 표시합니다. 사용자가 항목 중 하나를 클릭하면 대화 상자를 닫아야합니다. 대화 상자에 아무런 동작 버튼이 없습니다. 이걸 어떻게 이루겠습니까?


Answers

경고 대화 상자를 열 때 레이아웃을 사용할 수 있습니다. 이렇게 스타일을 지정하는 것이 더 쉽습니다. 경고 대화 상자의 목록에 대해 다음과 같이 할 수 있습니다.


당신은 다음과 같이 할 수 있어야합니다 :

final CharSequence[] items = {"Foo", "Bar", "Baz"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Make your selection");
builder.setItems(items, new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int item) {
         // Do something with the selection
    }
});
AlertDialog alert = builder.create();
alert.show();

page 에는 다양한 유형의 대화 상자에 대한 몇 가지 다른 예가 있습니다.


아래 코드를 사용하여 AlertDialog에 사용자 지정 목록 표시

AlertDialog.Builder builderSingle = new AlertDialog.Builder(
                    DialogActivity.this);
            builderSingle.setIcon(R.drawable.ic_launcher);
            builderSingle.setTitle("Select One Name:-");
            final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
                    DialogActivity.this,
                    android.R.layout.select_dialog_singlechoice);
            arrayAdapter.add("Hardik");
            arrayAdapter.add("Archit");
            arrayAdapter.add("Jignesh");
            arrayAdapter.add("Umang");
            arrayAdapter.add("Gatti");
            builderSingle.setNegativeButton("cancel",
                    new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.dismiss();
                        }
                    });

            builderSingle.setAdapter(arrayAdapter,
                    new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            String strName = arrayAdapter.getItem(which);
                            AlertDialog.Builder builderInner = new AlertDialog.Builder(
                                    DialogActivity.this);
                            builderInner.setMessage(strName);
                            builderInner.setTitle("Your Selected Item is");
                            builderInner.setPositiveButton("Ok",
                                    new DialogInterface.OnClickListener() {

                                        @Override
                                        public void onClick(
                                                DialogInterface dialog,
                                                int which) {
                                            dialog.dismiss();
                                        }
                                    });
                            builderInner.show();
                        }
                    });
            builderSingle.create();
            builderSingle.show();

kotlin을 사용하는 경우 :

MainActivity1에서 :

var intent=Intent(this,MainActivity2::class.java)
intent.putExtra("EXTRA_SESSION_ID",sessionId)
startActivity(intent)

MainActivity2에서 :

if (intent.hasExtra("EXTRA_SESSION_ID")){
    var name:String=intent.extras.getString("sessionId")
}




android