Доступ к списку недоступен - PullRequest
0 голосов
/ 20 ноября 2011

Хорошо, у меня здесь большая проблема.

У меня есть служба, которая должна обрабатывать просмотр списка (в xml-файле курса).Я попытался с помощью findviewbyid, конечно, это не сработало, потому что это не действие.

Затем я попытался создать статическую переменную с этим списком в основном действии. Сюрприз!Вы не можете сделать это статическим, потому что он использует findviewbyid.

Я также попытался создать функцию в основном действии, которая возвращает просмотр списка.Код выглядит нормально, однако, когда приложение попадает в эту функцию, происходит сбой.В журнале он появляется из-за нулевого указателя ...

Может кто-нибудь сказать мне, как получить доступ к этому списку, если я в службе?Это раздражает!

В основном упражнении на onCreate код выглядит так:

    UpdateDisplay();

    countdown();
    startService(new Intent(this, ss.class));

Источник списка:

private void UpdateDisplay() //was private and void
    {
        TextView feedtitle = (TextView) findViewById(R.id.feedtitle);
        TextView feedpubdate = (TextView) findViewById(R.id.feedpubdate);
        ListView itemlist = (ListView) findViewById(R.id.itemlist);


        if (feed == null)
        {
            feedtitle.setText("No RSS Feed Available");
            return;
        }

        feedtitle.setText(feed.getTitle());
        feedpubdate.setText(feed.getPubDate());

        ArrayAdapter<RSSItem> adapter = new ArrayAdapter<RSSItem>(this ,android.R.layout.simple_list_item_1,feed.getAllItems());

        itemlist.setAdapter(adapter);

        itemlist.setOnItemClickListener(this);

        itemlist.setSelection(0);

    }

Ответы [ 2 ]

1 голос
/ 20 ноября 2011

Может кто-нибудь сказать мне, как получить доступ к этому списку, если я нахожусь в службе?

Это невозможно.От служб не требуется напрямую работать с элементами пользовательского интерфейса.

Вы можете обновить свой вопрос, ПОЧЕМУ вам нужен ListView в Service.Чтобы другие могли указать вам правильное направление.

0 голосов
/ 20 ноября 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...