Android - намерение в ListView - PullRequest
       19

Android - намерение в ListView

1 голос
/ 02 августа 2011

Я не могу создать намерение в своем Listview.Он выдает ошибку «невозможно создать экземпляр компонента ComponentInfo» и вызван Classcastexception.вот фрагмент -

lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {

Intent myIntent = new Intent(view.getContext(), Vol.class);
startActivityForResult(myIntent, 0);

        }});

это часть кода, создающая проблемы -

Intent myIntent = new Intent(view.getContext(), Vol.class);
startActivityForResult(myIntent, 0);

Я не могу понять, почему он дает ClassCastException.Пожалуйста помоги.Спасибо!

Ответы [ 4 ]

1 голос
/ 02 августа 2011

Попробуйте дать событие, как это

@Override
    public void onItemClick(AdapterView<?> a, View v, int position, long id) {
         if(position==0){
             Intent i = new Intent(this, abc.class);
             startActivity(i);

        } else if(position==1){
             Intent i = new Intent(this, xyz.class);
             startActivity(i);

        }

    }
0 голосов
/ 02 августа 2011

просто

this.startActivityForResult(myIntent, 0);

?

и не забудьте зарегистрировать свою активность в файле AndroidManifest.xml в теге ..

например:

<activity: android:name=".ExampleActivity" android:label="My ExampleActivity!" />
0 голосов
/ 02 августа 2011

Попробуйте передать это так:

lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {

Intent myIntent = new Intent(view.getContext(), Vol.class);
view.getContext().startActivityForResult(myIntent, 0);

        }});

Это может быть связано с проблемой контекста.Если

 view.getContext().startActivityForResult(myIntent, 0);

не работает, попробуйте передать различные контексты для startActivityForResult(myIntent, 0);.

0 голосов
/ 02 августа 2011
Intent myIntent = new Intent(yourActivity.this, Vol.class);
startActivityForResult(myIntent, 0);
...