Android - Создание диалогового окна оповещения в виде списка из выбранного элемента - PullRequest
1 голос
/ 03 января 2011

Я изо всех сил пытался получить всплывающее диалоговое окно с предупреждением, когда пользователь щелкает элемент в представлении списка.Я могу сделать тостовое сообщение, но не могу заставить работать диалоговое окно с предупреждением.Затем я хочу, чтобы в диалоговом окне оповещения была кнопка, позволяющая мне взять только что выбранный элемент и отобразить его на следующем экране, где будут отображаться контактные данные и т. Д. Для выбранного элемента.Если кто-нибудь может дать мне какое-либо понимание каких-либо хороших методов или советов, как это сделать, это было бы здорово!Я очень новый программист, и я пробовал везде.

Ниже мой код:

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        String[] taxi = getResources().getStringArray(R.array.taxi_array);
        setListAdapter(new ArrayAdapter<String>(this, R.layout.listtaxi, taxi));

        ListView lv = getListView();
        lv.setTextFilterEnabled(true);

     lv.setOnItemClickListener(new OnItemClickListener() {
          public void onItemClick(AdapterView<?> parent, View view,
              int position, long id) {
            // When clicked, show a toast with the TextView text
            Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
                Toast.LENGTH_LONG).show();
          }
        });
    } 
}

Массив находится в файле strings.xml.

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

Ответы [ 3 ]

1 голос
/ 03 сентября 2011

Заменить

Toast.makeText(getApplicationContext(), ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 

с

Toast.makeText(lv.getContext(), ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 
0 голосов
/ 03 января 2011

Попробуйте использовать YourClass.this вместо getApplicationContext().

0 голосов
/ 03 января 2011

Ваш код в целом правильный.Я хотел бы убедиться, что ваш код для публикации диалогового окна работает в первую очередь правильно.Попробуйте это за пределами списка, а затем посмотрите, работает ли оно в самом операторе onClick ().

...