11アンドロイドの各種弾窓の総括とコードの例

22070 ワード

ダイアログ
  • ユーザは、決定を下すために使用されるか、または追加の情報を追加してスクリーンに埋め込まないでトリガされてのみ実行される.
  • よく使うダイアログ
  • 通常のダイアログAlertDialog
  • AlertDialog.Builder

  • 進捗バー付きダイアログProgressDialog
  • ProgressDialoga=new ProgressDialog(パラメータ);

  • 日付選択ダイアログDatePickerDialog
  • DatePickerDialog dialog = new DatePickerDialog()

  • 時間選択ダイアログTimePickerDialog
  • TimePickerDialog dialog=new TimePickerDialog(パラメータ)
  • カスタムダイアログ
  • AlertDialog.Builder buidler = new AlertDialog.Builder(this); buidler.setView(view);


  • その他のダイアログ:
  • 一般リストダイアログ
  • AlertDialog.Builder
  • setSingleChoiceItemsとユニットが異なるのは、小さなボックスチェックがない
  • です.
  • ラジオリストダイアログ
  • AlertDialog.Builder
  • setSingleChoiceItemsラジオ選択ボックス
  • 複数選択リストダイアログ
  • AlertDialog.Builder
  • setMultiChoiceItems
  • を複数選択可能
  • アダプタダイアログボックス
  • AlertDialog.Builder




  • メソッド構造図の生成
    各ポップアップコード:
  • 通常のダイアログ
  • package com.fmy.daialog1;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnClickListener;
    import android.os.Bundle;
    import android.view.View;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        public void  click(View v) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setIcon(R.drawable.ic_launcher);
            builder.setPositiveButton("  ", new OnClickListener() {
    
                @Override
                public void onClick(DialogInterface dialog, int which) {
    // finish();
                }
            });
            builder.setNegativeButton("  ", null);
            builder.setTitle("    ");
            builder.setMessage("    ");
            builder.show();
        }
    
    
    }
  • 進捗バー付きダイアログ
  • package com.fmy.dialog2;
    
    import android.app.Activity;
    import android.app.ProgressDialog;
    import android.os.Bundle;
    import android.view.View;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        public void click(View v){
            ProgressDialog a = new  ProgressDialog(this);
            a.setIcon(R.drawable.ic_launcher);
            a.setTitle("       ");
            a.setMessage("   ");
            a.setProgressStyle(ProgressDialog.STYLE_SPINNER);
            a.setCancelable(false);
            a.show();
            a.setProgress(99);
    
    
        }
    
    }
    
  • 日付選択ダイアログ
  • package com.fmy.dialon;
    
    import java.util.Calendar;
    
    import android.app.Activity;
    import android.app.DatePickerDialog;
    import android.app.DatePickerDialog.OnDateSetListener;
    import android.app.TimePickerDialog;
    import android.app.TimePickerDialog.OnTimeSetListener;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.DatePicker;
    import android.widget.TimePicker;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
    
        public void click1(View v) {
    
            Calendar calendar = Calendar.getInstance();
            int year = calendar.get(calendar.YEAR);
            int month = calendar.get(calendar.MONTH);
            int day = calendar.get(calendar.DAY_OF_MONTH);
            DatePickerDialog dialog = new DatePickerDialog(this, new OnDateSetListener() {
    
                @Override
                public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
    
    
                }
            }, year, month, day);
            dialog.show();
        }
    }
    
  • 時間選択ダイアログ
  • package com.fmy.dialon;
    
    import java.util.Calendar;
    
    import android.app.Activity;
    import android.app.DatePickerDialog;
    import android.app.DatePickerDialog.OnDateSetListener;
    import android.app.TimePickerDialog;
    import android.app.TimePickerDialog.OnTimeSetListener;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.DatePicker;
    import android.widget.TimePicker;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        public void click2(View v) {
    
            TimePickerDialog dialog = new TimePickerDialog(this, new OnTimeSetListener() {
    
                @Override
                public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                    // TODO Auto-generated method stub
    
                }
            }, 9    , 1, true);
            dialog.show();
        }
  • カスタムダイアログ
  • package com.fmy.dialog5;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.os.Bundle;
    import android.view.LayoutInflater;
    import android.view.View;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
        }
    
        public void click(View v) {
            AlertDialog.Builder buidler = new AlertDialog.Builder(this);
            buidler.setTitle("  ");
            LayoutInflater inflater = LayoutInflater.from(this);
            View view = inflater.inflate(R.layout.dialog, null);
            buidler.setView(view);
            buidler.setNegativeButton("  ", null);
            buidler.setPositiveButton("  ", null);
            buidler.show();
        }
    
    }
    
  • 一般リストダイアログ
  • package com.fmy.dialog;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.TimePickerDialog;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnClickListener;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
    
    
        public void click1(View v) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setTitle("   ");
            builder.setItems(R.array.book, new OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    Toast.makeText(MainActivity.this, "==which==", 0).show();
                }
            });
            builder.create();
            builder.show();
        }
    }
    
  • ラジオリストダイアログ
  • package com.fmy.dialog;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.TimePickerDialog;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnClickListener;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        public void click2(View v) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setTitle("   ");
    
            builder.setSingleChoiceItems(getResources().getStringArray(R.array.book), 1, new OnClickListener() {
    
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    Toast.makeText(MainActivity.this, "==which==" + which, 0).show();
    
                }
            });
            builder.setPositiveButton("  ", new OnClickListener() {
    
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // TODO Auto-generated method stub
                    Toast.makeText(MainActivity.this, "==which==" + which, 0).show();
                }
            });
            builder.create();
            builder.show();
        }
  • 複数選択リストダイアログ
  • package com.fmy.fm;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.AlertDialog.Builder;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnClickListener;
    import android.content.DialogInterface.OnMultiChoiceClickListener;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.ArrayAdapter;
    
    public class MainActivity extends Activity {
    
        private String datas[];
        private boolean flags[];
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            datas = getResources().getStringArray(R.array.book);
            flags = new boolean [datas.length];
        }
    
        public void click1(View v) {
    
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
    
            builder.setTitle("  ");
    
            builder.setMultiChoiceItems(datas, flags, new OnMultiChoiceClickListener() {
    
                @Override
                public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                    flags[which] = isChecked;
                }
            });
    
            builder.show();
        }
    
  • アダプタダイアログ
  • package com.fmy.fm;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.AlertDialog.Builder;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnClickListener;
    import android.content.DialogInterface.OnMultiChoiceClickListener;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.ArrayAdapter;
    
    public class MainActivity extends Activity {
    
        private String datas[];
        private boolean flags[];
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            datas = getResources().getStringArray(R.array.book);
            flags = new boolean [datas.length];
        }
    
    
    
        public void click2(View v) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setTitle("  ");
            String [] data = {"  ","   ","   "};
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,R.layout.adpater,R.id.tv,data);
            builder.setAdapter(adapter, new OnClickListener() {
    
                @Override
                public void onClick(DialogInterface dialog, int which) {
    
    
                }
            });
            builder.show();
        }
    }