Форум программистов, компьютерный форум CyberForum.ru

Как получить View выбранного элемента контекстного меню? - Android

Восстановить пароль Регистрация
 
Путин
41 / 21 / 5
Регистрация: 14.04.2011
Сообщений: 576
25.01.2015, 17:47     Как получить View выбранного элемента контекстного меню? #1
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
@Override
public boolean onContextItemSelected(MenuItem item)
{
    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
    if (info == null)
    {
        this.toast_("Fail 0");
        return super.onContextItemSelected(item);
    }
    //int index = info.position;
    View view = info.targetView;
    return super.onContextItemSelected(item);
}
getMenuInfo возвращает null.

Создаю меню так:
Java
1
2
3
4
5
6
7
8
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo)
{
    switch (v.getId())
    {
        case R.id.LLitem:   menu.add(0, Menu.NONE, 0, "Example");   break;
    }
}
В чем может быть проблема?
Чей View я получу в конечном итоге?

У меня есть XML файл:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/LLitem"
    android:layout_width="fill_parent"
    android:layout_height="?android:attr/listPreferredItemHeight"
    android:orientation="horizontal"
    android:padding="6dip" >
 
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:src="@drawable/ic_launcher" />
 
    <TextView
        android:id="@+id/firstLine"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginRight="15dp"
        android:layout_marginLeft="5dp"
        android:gravity="center_vertical"
        android:text="Example application"
        android:textSize="16sp" />
 
    <TextView
        android:id="@+id/labelID"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxHeight="2dp"
        android:maxWidth="2dp"
        android:text="Small Text"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:visibility="invisible" />
 
</LinearLayout>
Это на сам item ListView'a на эти item'ы я создаю контекстное меню кодом выше, а получить хочу я view именно LinearLayout. Как такое организовать?

Добавлено через 21 минуту
Нашел решение, надо было регистрировать меню не на Item'ы, а на ListView.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.01.2015, 17:47     Как получить View выбранного элемента контекстного меню?
Посмотрите здесь:

Добавление элемента - наследника View Android
Android ListView: подсветка выбранного элемента
Исполнение кода элемента из меню Android
Android Обработка нажатия каждого элемента List View
Группы для контекстного меню Android
Как при выборе пункта меню получить значение элемента формы? Android
Android Создание контекстного меню в списках
Получить уникальный код View Android
Что за view используется для меню в OneDrive Android
Как получить текст элемента списка? Android
Android Обработка нажатия элементов контекстного меню
Как обновить Recycle View после добавления нового элемента в БД? Используется Cursor Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 23:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru