1

I have a context menu in my main activity that opens when an item is selected or clicked. 当用户单击上下文菜单中列出的字符串之一时,如何显示图像?我只有用 Java 而不是 xml 编写的上下文菜单。这是代码。

package com.carouseldemo.main;

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import com.carouseldemo.controls.Carousel;
import com.carouseldemo.controls.CarouselAdapter;
import com.carouseldemo.controls.CarouselAdapter.AdapterContextMenuInfo;
import com.carouseldemo.controls.CarouselAdapter.OnItemClickListener;
import com.carouseldemo.controls.CarouselAdapter.OnItemSelectedListener;
import com.carouseldemo.controls.CarouselItem;

public class MainActivity extends Activity {
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
    // Just prepare ourself for unexpected arguments...
    if (menuInfo == null) {
        return;
    }
    if (!(menuInfo instanceof AdapterContextMenuInfo)) {
        return;
    }
    AdapterContextMenuInfo mi = (AdapterContextMenuInfo)menuInfo;
    switch (mi.position) {
    case 0:
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        break;
    case 1:
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        break;
    case 2:
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        break;
    case 3:
        menu.add("mouse menu");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        break;
    case 4:
        menu.add("panda menu");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        break;
    case 5:
        menu.add("rabbit menu");
        menu.add("Product 1");
        menu.add("Product 1");
        menu.add("Product 1");
        break;
    default:
        break;
    }
    super.onCreateContextMenu(menu, v, menuInfo);
}

单击 menu.add 中的“产品 1”之一时,如何弹出图像视图?对此有什么想法吗?先感谢您。

4

1 回答 1

0

你可以试试:

menu.onClick(new OnClickListener() {
    public void onClick() {
    // Do Something here
    }
});

此外,作为 ContextMenu 的一部分,您将拥有可以覆盖并返回您选择的项目的 findItem(int item)。

于 2013-01-30T20:28:05.330 回答