我目前正在为 Android 开发一个 mp3 库。问题是,我希望用户选择他想添加的播放列表的名称(有用的 innit ?)。因此,我在播放列表列表上创建了一个上下文菜单,允许用户在 3 个选项之间进行选择,创建、删除、重命名。为什么我要做的是在用户单击“创建”时显示一个 EditText 字段,以便他可以编写新播放列表的名称。但是,我无法显示它。这是我为菜单制作的听众:
//creation onLongClickListener : display the menu on long lick
playlistView.setOnLongClickListener(new OnLongClickListener(){
public boolean onLongClick(View v) {
((Activity) context).openContextMenu(v);
return true;
}});
//contextMenuListener of the view
playlistView.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener(){
public void onCreateContextMenu(ContextMenu cMenu, View v, ContextMenu.ContextMenuInfo menuInfo) {
MenuInflater inflater = ((Activity) context).getMenuInflater();
inflater.inflate(R.menu.playlist_menu, cMenu);
lastLongClickedView = v;
}});
在 menu.xml 文件中,我这样做了:
<item android:id="@+id/playlist_create"
android:title="Create a playlist"
>
<menu>
<EditText
android:id="@+id/playlist_choice"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:hint="@string/playlist_name"
android:lines="1"
/>
</menu>
</item>
我尝试了一个项目,它显示了,但是 EditText. 我认为我犯的错误很愚蠢,但我找不到它:(
感谢您的关注。