使用 android 带布局但不带布局的操作栏项目 java class
Work with android action bar items with layout and without java class
我试图打开一个对话框 (Layout-xml)(without java class !!)酒吧名为 about.so,这是我的 onOptionsItemSelected
代码:
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (item.getItemId()) {
case R.id.action_settings:
Toast.makeText(this, "Settings selected", Toast.LENGTH_SHORT).show();
return true;
case R.id.action_about:
LocationFound();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
private void LocationFound() {
Intent i = new Intent(MainActivity.this, aboutdialog);
startActivity(i);
}
然后当我想在 :
中添加对话框(布局)文件时
Intent i = new Intent(MainActivity.this, aboutdialog);
不允许这样做 this.also,我之前试过这个 Intent
:
startActivity(new Intent(MainActivity.this, aboutdialog));
问题是应用程序无法 find/accept aboutdialog
。
所以问题是,
我们如何做到这一点,当我点击操作栏中的 About
按钮时,它会显示关于对话框?
提前致谢。
您不需要意图来显示对话框。将您的 LocationFound() 方法更改为此
private void LocationFound(View view) {
Dialog dialog = new Dialog(YourActivityName.this);
dialog.setContentView(R.layout.dialog_layout);
dialog.show();
}
Intent
用于从一个 Activity
移动到另一个 Activity
。
about dialog
它不是 Activity
,所以这就是它对您不起作用的原因。
您应该改用此方法
Dialog.show()
应该是这样 that:
aboutdialog.show()
我试图打开一个对话框 (Layout-xml)(without java class !!)酒吧名为 about.so,这是我的 onOptionsItemSelected
代码:
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (item.getItemId()) {
case R.id.action_settings:
Toast.makeText(this, "Settings selected", Toast.LENGTH_SHORT).show();
return true;
case R.id.action_about:
LocationFound();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
private void LocationFound() {
Intent i = new Intent(MainActivity.this, aboutdialog);
startActivity(i);
}
然后当我想在 :
中添加对话框(布局)文件时Intent i = new Intent(MainActivity.this, aboutdialog);
不允许这样做 this.also,我之前试过这个 Intent
:
startActivity(new Intent(MainActivity.this, aboutdialog));
问题是应用程序无法 find/accept aboutdialog
。
所以问题是,
我们如何做到这一点,当我点击操作栏中的 About
按钮时,它会显示关于对话框?
提前致谢。
您不需要意图来显示对话框。将您的 LocationFound() 方法更改为此
private void LocationFound(View view) {
Dialog dialog = new Dialog(YourActivityName.this);
dialog.setContentView(R.layout.dialog_layout);
dialog.show();
}
Intent
用于从一个 Activity
移动到另一个 Activity
。
about dialog
它不是 Activity
,所以这就是它对您不起作用的原因。
您应该改用此方法
Dialog.show()
应该是这样 that:
aboutdialog.show()