私は非常に初心者で、アプリのメニューにandroid development
新しいMenu
アイテムを追加して、タップしたときにメニュービュー レイアウトを開いて表示するのに問題があります。これまでのところ、アプリのmenu.xmlファイルを変更することしかできませんでした。これは、ボタンbutton
を押したときに表示される他のものと並んで配置される を作成するには十分ですMenu
が、何かにリンクするには十分ではありません。
私の目標は、ボタンを押すと、単純な xml レイアウトまたはダイアログ ページに接続することです。Javaコードを変更する必要があると思いますが、これを行うために正確に何が必要かわかりません。提案をいただければ幸いです。
「アクティビティでメニューを使用するには、MenuInflater.inflate() を使用してメニュー リソースをインフレートする (XML リソースをプログラム可能なオブジェクトに変換する) 必要があります。次のセクションでは、各メニュータイプのメニュー。」私が知る必要があるのは、アイテムを他のアイテムのインフレータに追加する方法だと思います。
私が挿入できるもののバニラバージョンを持っている人はいますか?
ダイアログを開き、閉じるボタンと「変更」ボタンを処理する既存のコードの例を次に示します。
private void openHelpDialog() {
LayoutInflater li = LayoutInflater.from(this);
View view = li.inflate(R.layout.aboutview, null);
TextView tv = (TextView)view.findViewById(R.id.aboutVersionCode);
tv.setText(getVersionName() + " (revision " + getVersionNumber() + ")");
new AlertDialog.Builder(MainActivity.this)
.setTitle(getResources().getString(R.string.application_name) + " " + getResources().getString(R.string.menu_help))
.setIcon(R.drawable.about)
.setView(view)
.setNeutralButton(R.string.menu_changes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
MainActivity.this.openChangesDialog();
}
})
.setNegativeButton(R.string.close, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
})
.show();
}
private void openChangesDialog() {
LayoutInflater li = LayoutInflater.from(this);
View view = li.inflate(R.layout.changeview, null);
new AlertDialog.Builder(MainActivity.this)
.setTitle(R.string.changelog_title)
.setIcon(R.drawable.about)
.setView(view)
.setNegativeButton(R.string.close, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
//
}
})
.show();
}
private void openClearDialog() {
new AlertDialog.Builder(MainActivity.this)
.setTitle(R.string.context_menu_clear_grid_confirmation_title)
.setMessage(R.string.context_menu_clear_grid_confirmation_message)
.setIcon(android.R.drawable.ic_dialog_alert)
.setNegativeButton(R.string.context_menu_clear_grid_negative_button_label, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
//
}
})
.setPositiveButton(R.string.context_menu_clear_grid_positive_button_label, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
MainActivity.this.kenKenGrid.clearUserValues();
}
})
.show();
}