جلسه سیزدهم- دیالوگ
يكشنبه, ۳۱ فروردين ۱۳۹۹، ۰۶:۳۲ ب.ظ
کنترل شیفت می زنی ایمپورتای اضافه برداشته میشه
دیالوگا رو می تونی خودت طراحی کنی اگه بخوای از آماده ش استفاده کنی دو جوره
alert dialog
progress dialog
باگ handler چیه؟ چرا وقتی یه هندلر میذارم تو یه تایمر کرش می کنه؟
نکته setprogress رو اگه قبل show بذاری هیچی به هیچی! باید بعدش بذاری
package ir.ben.frog; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import android.app.Dialog; import android.app.ProgressDialog; import android.content.DialogInterface; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.widget.ProgressBar; import android.widget.Toast; import java.util.Timer; import java.util.TimerTask; public class dialog extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_dialog); } public void custmzd(View view) { Dialog dd=new Dialog(this); dd.setTitle("This I made myself"); // dd.setContentView(R.layout.activity_dialog); dd.setContentView(R.layout.havij);//this can cause to make lots of dialogs on top of each other! dd.show(); } public void Multichoice(View view) { final String[] opt=new String[] {"Salad", "Bread", "Drink", "Jelly"}; AlertDialog.Builder bmc=new AlertDialog.Builder(this); bmc.setTitle("Do you want?") .setPositiveButton("OK",null) .setMultiChoiceItems(opt, new boolean[]{false, true, false, true}, new DialogInterface.OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { if(isChecked) Toast.makeText(dialog.this, opt[which]+" is chosen", Toast.LENGTH_SHORT).show(); else Toast.makeText(dialog.this, opt[which]+" is deleted", Toast.LENGTH_SHORT).show(); } }); bmc.show(); } public void alertchoicedial(View view) { AlertDialog.Builder bcd=new AlertDialog.Builder(this); //bcd.setMessage("Please Choose:") it substitutes the choices bcd.setTitle("Please choose") .setCancelable(false) .setPositiveButton("OK",null) .setSingleChoiceItems(new String[]{"A", "B", "C"}, -1, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(dialog.this, "Item "+which+" is chosen", Toast.LENGTH_SHORT).show(); } }); AlertDialog add=bcd.create();//If you want to say dismiss you can use this line,I couldn't get it work btw! bcd.show(); } public void alertdial(View view) { AlertDialog.Builder bd=new AlertDialog.Builder(this); bd.setTitle("OH") .setMessage("SURE?") .setCancelable(false) .setIcon(android.R.drawable.ic_menu_delete) .setPositiveButton("Yes", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(dialog.this,which+ "I delete the file", Toast.LENGTH_SHORT).show(); } }) .setNegativeButton("No",null) .setNeutralButton("cancel",null); bd.show(); } public void progrs(View view) { final ProgressDialog pd=new ProgressDialog(this); pd.setCancelable(true); pd.setTitle("Hey"); pd.setMessage("Question?"); pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); // pd.setProgressStyle(ProgressDialog.STYLE_SPINNER); //// pd.setIndeterminate(true); pd.show(); pd.setProgress(10); pd.setSecondaryProgress(14); new Timer().scheduleAtFixedRate(new TimerTask() { @Override public void run() { if(pd.getProgress()<pd.getMax()) pd.incrementProgressBy(1); else { pd.dismiss(); /* new Handler().postDelayed(new Runnable() { @Override public void run() { pd.dismiss(); } },1000L);*/ } } }, 0, 50L); new Timer().scheduleAtFixedRate(new TimerTask() { @Override public void run() { ////// if(pd.getSecondaryProgress()<pd.getMax()) pd.incrementSecondaryProgressBy(1); } }, 0, 20L); /* new Handler().postDelayed(new Runnable() { @Override public void run() { pd.dismiss(); } },1000L);*/ } }
۹۹/۰۱/۳۱