簡體   English   中英

自定義ListView中的setOnItemClickListener不起作用ActionBarSherlock

[英]setOnItemClickListener in custom ListView not Work ActionBarSherlock

我正在使用ActionBar Sherlock,並且工作正常。

該代碼在2.x中可以正常工作,但在4.x中則不能

單擊僅在2.x版本中有效,而在4.x版本中無效,我已經嘗試了很多方法,但無法使用click功能

問題是什么?

import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import com.actionbarsherlock.app.SherlockListActivity;

public class Inicio extends SherlockListActivity {
    private ListView mListView;
    private ArrayList<Capitulos> listado;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        mListView = getListView();

        listado = new ArrayList<Capitulos>();

        for(int i = 0; i < 20; i++){
            listado.add(new Capitulos("Titulo " + i, "descripcion " + i));
        }

        AdaptadorTitulares adaptador = new AdaptadorTitulares(Inicio.this);
        setListAdapter(adaptador);
        mListView.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> a, View v, int position, long id) {
                Toast.makeText(Inicio.this, "hazlo", 0).show();
            }
        });
    }

    class AdaptadorTitulares extends ArrayAdapter {
        Activity context;

        @SuppressWarnings("unchecked")
        AdaptadorTitulares(Activity context) {
            super(context, R.layout.lista, listado);
            this.context = context;
        }

        public View getView(int position, View convertView, ViewGroup parent) {
            LayoutInflater inflater = context.getLayoutInflater();
            View item = inflater.inflate(R.layout.lista, null);

            TextView titulo = (TextView)item.findViewById(R.id.titulo_art);
            titulo.setText(((Capitulos)getItem(position)).getTitulo());
            TextView subtitulo = (TextView)item.findViewById(R.id.desc_art);
            subtitulo.setText(((Capitulos)getItem(position)).getDescrip());

            return(item);
        }

    }
}

嘗試在arrayyAdapter類中將其定義為arrayyAdapter onClickListener()

item.setOnClickListener(.....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM