3
後,我有一個按鈕:如何添加新的項目,彈出菜單中單擊
<Button
android:id="@+id/bot_button1"
android:layout_width="120dp"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textSize="24sp"
android:text="@string/bot_button1_tx" />
這是我的主要活動:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
activity = this;
setContentView(R.layout.activity_main);
button1 = (Button) findViewById(R.id.bot_button1);
button1.setOnClickListener(onClickListener);
Log.d(className, "onCreate");
private OnClickListener onClickListener = new OnClickListener() {
@Override
public void onClick(final View v) {
switch(v.getId()){
case R.id.bot_button1:
showPopupMenu(v, 1);
break;
}
}
};
private void showPopupMenu(final View v, Integer i){
PopupMenu popupMenu = new PopupMenu(MainActivity.this, v);
switch (i) {
case 1:
popupMenu.getMenuInflater().inflate(R.menu.menu1, popupMenu.getMenu());
break;
}
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
new AlertDialog.Builder(activity).
setTitle("TITLE").
setMessage("MESSAGE").
setAdapter(adapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO: user specific action
dialog.dismiss();
}
}).create().show();
return true;
}
});
popupMenu.show();
}
我怎麼能顯示更多的項目時,從的彈出菜單中的項目被選中(點擊)?理想情況下的情況:PopupMenu在選擇後保持可見狀態,並且新的PopupMenu出現在所選項目的旁邊。或彈出式菜單展開顯示子項目。
我試着介紹第二個PopupMenu onMenuItemClick(),但它只取代了第一個PopupMenu。
在此,我創造我beleive,我使用PopupWindow控制代替的PopupMenu控件創建一個完全自定義的菜單系統的應用程序。當然,我這樣做,因爲我想要一個完全自定義的外觀和感覺,但我只需要單一的水平。環顧四周,我還沒有看到任何信息表明它是或不可能在屏幕上同時擁有多個PopupWindow控件。 – trumpetlicks
我正在做類似的事情! http://stackoverflow.com/questions/16621070/get-context-of-popupmenu-like-contextmenu – toobsco42