Кнопка события в Listview и обратно - PullRequest
0 голосов
/ 03 февраля 2012

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

Но проблема в том, что, как только я нажимаю на кнопку, открывается список, но моя оригинальная программа для Android вылетает. (ListView находится в другом классе, который теперь начинает работать).

            public void onClick(View v) {
                Intent intent = new Intent(v.getContext(), MemoryReader.class);
                startActivityForResult(intent, 0);
            }

Это фрагмент кода. Что я делаю неправильно?

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

Идея, которая у меня была сейчас, заключалась в том, чтобы реализовать просмотр списка с помощью флажков (я где-то читал, это возможно), а затем использовать функцию getAllCheckedOptions () для получения того, что было проверено.

Если есть более простой способ решения моей проблемы, пожалуйста, укажите мне на это.

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 03 февраля 2012

Вы начинаете для результата без возможности сказать, откуда приходит результат. Это не хорошо. Измените 0 на что-то еще лучше.

Вот некоторые части моего рабочего кода, который вызывает действие для результата:

------------------------------------- PackVideo активность - ------------------------------------

вызов ServerSetActivity

Intent serverSetIntent = new Intent();
serverSetIntent.setClass(this, ServerSetActivity.class);
startActivityForResult(serverSetIntent, CHANGE_IP);

установка констант и отлов результатов:
(у меня они вместе, потому что только здесь при отлове встречаются оба заказчика)

static public int CHANGE_IP = 1000;
static public int CHANGE_IP_DONE = 1001;

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // If the request was for CHANGE_IP and the request was CHANGE_IP
    if (resultCode == CHANGE_IP_DONE && requestCode == CHANGE_IP) {
        readBaseInfoFromServer(getApplicationContext());
        startVideoPlayerService(getApplicationContext());
        setCurrentChannelAndPlay(getApplicationContext(), 0);
    }
}

----------------------------------- ServerSetActivity ----- -----------------------------------

окончание вызванной деятельности

final Intent intent = new Intent();
setResult(PackVideo.CHANGE_IP_DONE, intent);
finish();

Поставьте здесь "onCreate" и оба макета MemoryReader, пожалуйста.

...