Получить текст из элемента списка - PullRequest
2 голосов
/ 30 января 2012

Я пытаюсь получить текст элемента списка.И я делаю в заголовке контекстного меню щелкающий текст элемента.

Это мой взгляд

<LinearLayout
            android:id="@+id/innerlayout"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:clickable="true"
            android:layout_weight="0.85"
            android:orientation="vertical" >
            <ListView 
                 android:id="@android:id/list"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 />
            </LinearLayout>

И в процессе создания я установил простой адаптер курсора

SimpleCursorAdapter mysqliteadapter=new SimpleCursorAdapter(this,R.layout.thepatientrow,cursor,from,to);
            setListAdapter(mysqliteadapter);

В OnCreateContextMenu я хочу установить заголовок заголовка По выбранному тексту элемента

public void onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo){
        super.onCreateContextMenu(menu, v, menuInfo);
        menu.setHeaderTitle("");
        menu.add(Menu.NONE,CONTEXT_MENU_DELETE_ITEM,Menu.NONE,"Delete");
        menu.add(Menu.NONE,CONTEXT_MENU_UPDATE,Menu.NONE,"Update");
    }

Пожалуйста, расскажите о ваших ценных предложениях.

Я добавил несколько изображений для облегчения понимания

I have listview like below(All data shown from db only. No xml).

И я хочу показать заголовок контекстного меню, как показано ниже

And i want to show the context menu header, like below

Ответы [ 2 ]

5 голосов
/ 30 января 2012
onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo)

View v относится к выбранному элементу в списке.В R.layout.thepatientrow найдите id TextView, относящегося к заголовку (например, R.id.header_text_view) вашего макета, затем:

    menu.setHeaderTitle(((TextView)v.findViewById(R.id.header_text_view)).getText().toString());
0 голосов
/ 04 ноября 2013

это то, что мне нужно, чтобы выбранный элемент отображался в заголовке.У меня есть собственный просмотр списка с изображением и двумя текстовыми представлениями, так что я просто нахожу текстовое представление, которое хочу показать через его идентификатор.

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
        ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    if (v.getId() == R.id.listView1) {
        AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
        String titulo = (String) ((TextView) info.targetView
                .findViewById(R.id.list_guia)).getText();
        menu.setHeaderTitle(titulo);
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu_list, menu);
    }
}
...