0
    lv.setAdapter(adp);
    lv.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // TODO Auto-generated method stub
            Cursor c = (Cursor)arg0.getItemAtPosition(arg2);
            call = c.getString(0);
            Intent i = new Intent(null, Ldetail.class);
            i.putExtra("id",call);
            startActivity(i);
4

5 に答える 5

3

この行を変更します。

Intent i = new Intent(null, Ldetail.class);

null の代わりに context または activityname.this を使用します。context または activity name を渡す必要があります。

Intent i = new Intent(YourCurrentActivityName.this, Ldetail.class);

または

Intent i = new Intent(getBaseContext(), Ldetail.class);

AndroidマニフェストファイルでLdetailアクティビティを宣言します。

于 2013-03-02T07:18:43.957 に答える
0
  usersList.setOnItemClickListener(new AdapterView.OnItemClickListener() {

ここでは、カスタム アダプタの親クラスであるアダプタ ビューのビューを使用しました。それが機能していない理由です。代わりに、カスタム アダプタのビューを使用する必要がありました。

ここで getView() 関数を使用すると、親アダプタ ビューのビューをカスタム アダプタ ビューに変換できます。

したがって、2 つのオプションのいずれかを使用します。

usersList.setOnItemClickListener(new CustomAdapterView.OnItemClickListener() {

また

usersList.setOnItemClickListener(new OnItemClickListener() {
于 2013-03-02T07:18:28.293 に答える
0

コンテキストの代わりに null を渡すのはなぜですか?
インテントにコンテキストを追加します

Intent i = new Intent(yourclassname.this, Ldetail.class);
于 2013-03-02T07:19:55.123 に答える
0
 Intent i = new Intent(null, Ldetail.class);
        i.putExtra("id",call);
        startActivity(i);

コンテキストまたはアクティビティを渡す必要があります。

     Intent i = new Intent(this, Ldetail.class);

また

Intent i = new Intent(getBaseContext(), Ldetail.class);
于 2013-03-02T07:20:00.387 に答える