View Full Version : مشکل با Dialog و OptionMenu
A.iman
پنج شنبه 19 دی 1392, 23:29 عصر
سلام دوستان .
من میخوام وقتی کاربر روی دکمه منو کلیک میکنه یه Dialog بهش نشون بده که این Dialog به صورت زیر ساختم »
LayoutInflater factory = LayoutInflater.from(this);
final View deleteDialogView = factory.inflate(R.layout.dialog, null);
final AlertDialog deleteDialog = new AlertDialog.Builder(this).create();
deleteDialog.setView(deleteDialogView);
حالا وقتی اینو میزارم توی OnCreateOptionMenu هربار که برنامه اجرا میشه نشون داده میشه و زمانی که روی دکمه منو کلیک میکنم چیزی نشون نمیده !؟ به نظرتون چیکار کنم !؟
saeed_g21
جمعه 20 دی 1392, 00:36 صبح
از deleteDialog.show(); استفاده در دگمه ببین درست میشه
whiteflag
جمعه 20 دی 1392, 11:01 صبح
نمیدونم این چه روش Dialog ساختنیه که شما استفاده کردی :لبخند: اینی که شما ساختی AlertDialog هست که یه مثالشو ساختم براتون کد کاملش اینه:
package sha.a.wf.ui_test;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;
public class ActivityDialog extends Activity {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 1, 1, "EXII");
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
AlertDialog.Builder dialog = new AlertDialog.Builder(ActivityDialog.this);
dialog.setTitle("title shoma");
dialog.setMessage("message shoma");
dialog.setIcon(android.R.drawable.ic_dialog_alert) ;//icon
dialog.setPositiveButton("javabe + ", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
ActivityDialog.this.finish();
}
});
dialog.setNegativeButton("Javabe -", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(ActivityDialog.this, "Javabe -", 3000);
}
});
dialog.create().show();
break;
}
return super.onOptionsItemSelected(item);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.form_dialog);
}
}
whiteflag
جمعه 20 دی 1392, 11:04 صبح
سلام دوستان .
من میخوام وقتی کاربر روی دکمه منو کلیک میکنه یه Dialog بهش نشون بده که این Dialog به صورت زیر ساختم »
LayoutInflater factory = LayoutInflater.from(this);
final View deleteDialogView = factory.inflate(R.layout.dialog, null);
final AlertDialog deleteDialog = new AlertDialog.Builder(this).create();
deleteDialog.setView(deleteDialogView);
حالا وقتی اینو میزارم توی OnCreateOptionMenu هربار که برنامه اجرا میشه نشون داده میشه و زمانی که روی دکمه منو کلیک میکنم چیزی نشون نمیده !؟ به نظرتون چیکار کنم !؟
onCreateOptionMenu فقط برای ساخت منو هست و برای دادن خاصیت به اون باید از onOptionItemSelected استفاده کنید که مثالشو گذاشتم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.