Android 如何获取SimpleAdapter的McClickListener

Android 如何获取SimpleAdapter的McClickListener,android,Android,这是我的变量 我的密码 final ListView lv= (ListView)findViewById(R.id.list); String[] from = new String[] {"a", "b","c"}; int[] to = new int[] { R.id.textbutton , R.id.buttonlist, R.id.imgart}; List fillMaps=new ArrayList(); 字符串[]ArrayStr=Func.split(结果字符串“|

这是我的变量

我的密码

 final ListView lv= (ListView)findViewById(R.id.list);
 String[] from = new String[] {"a", "b","c"};
 int[] to = new int[] { R.id.textbutton , R.id.buttonlist, R.id.imgart};
List fillMaps=new ArrayList();
字符串[]ArrayStr=Func.split(结果字符串“|*|”);
对于(int i=0;i
为什么它仍然不能点击? 我的代码怎么了


对不起,我是android中的noob…

您的类必须扩展ListActivity并重写

@覆盖
受保护的void onListItemClick(列表视图l、视图v、整数位置、长id){
//做点什么
}

编辑

`公共类ListaFicheros扩展ListActivity{

List<HashMap<String, String>> fillMaps = new ArrayList<HashMap<String, String>>();
            String[]ArrayStr = Func.split(resultString, "|*|");
            for(int i = 0; i < ArrayStr.length; i++){
                String[]AStr = Func.split(ArrayStr[i], "|**|");
                HashMap<String, String> map = new HashMap<String, String>();
                map.put("a", ArrayStr[i]);
                map.put("b", AStr[1]);
                fillMaps.add(map);
            }

            // fill in the grid_item layout
            SimpleAdapter adapter = new SimpleAdapter(this, fillMaps, R.layout.list, from, to);
            lv.setAdapter(adapter);


            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_SHORT).show();
              }
            });
@覆盖
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.lista_ficheros);
//....
initLista(auxFile.listFiles());
}
私有void initLista(文件[]archivos){
//....  
ArrayaAdapter listaArchivos=新的MarrayaAdapter(这个,R.layout.fila_list_fich,R.id.lista_fich_texto_fila,elemSinExt);
setListAdapter(Listaachivos);
}
@凌驾
受保护的void onListItemClick(列表视图l、视图v、整数位置、长id){
int IDFilaSeleccionada=位置;
意向意向=新意向(ListaFicheros.this,InterfazLector.class);
intent.putExtra(“PATH”,PATH.get(idfilaselecionada));
intent.putExtra(“NOMBRE”,elementos.get(idfilasleccionada));
OK((可控震源)getSystemService(Context.可控震源_服务));
startActivityForResult(意向,ID);
}`

1.您的代码是否缺少ListView lv=(ListView)findViewById(R.id.list)2.如果您的活动是从ListActivity扩展而来,请尝试使用getListView()@sail我的活动仍然扩展活动,所以我不需要gedlistview,我想我的变量也不会丢失。列表显示得很完美,但无法单击…我已将代码更改为自定义适配器,但在自定义适配器中我无法放置静态页眉和页脚..这会使我的布局变得很糟糕..是否有ListView lv=(ListView)findViewById(R.id.list)在活动的onCreate()中?[code]public void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.marketing);ListView lv=(ListView)findViewById(R.id.list);[/code]这是我拥有的:)单击后,您是否收到任何异常/错误?@aracem在您的代码中变为错误…出现奇怪的错误,如“
此行有多个标记-标记上的语法错误”),;预期-标记上的语法错误“(”,;预期-void是变量onListItemClick的无效类型-标记上的语法错误“,”,;expected-Syntax error on token“,”,;expected-Syntax error on token“,”;expected
您确定您的类扩展了ListActivity吗?在这种情况下,为确保这一点,请右键单击->源->重写/实现方法,然后选择O onListItemClick。不要复制/粘贴。我给您留了一段代码(西班牙语,希望您不会有问题)。是的,我确定,唯一的列表项单击子菜单ListActivity:)那么我现在必须做什么?查看我的第一篇文章的编辑(up)。这是我的一个程序的示例。(ListView,一开始,总是有问题:天哪,我变得很困惑,我需要时间来更改并尝试您的代码…顺便说一句tq 4 your help@aracem明天我将告诉您结果
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.lista_ficheros);

    //....



    initLista(auxFile.listFiles());

}

private void initLista(File[]archivos){
      //....  

    ArrayAdapter<String> listaArchivos= new mArrayAdapter(this,R.layout.fila_list_fich,R.id.lista_fich_texto_fila, elemSinExt);
    setListAdapter(listaArchivos);

}

@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    int IDFilaSeleccionada = position;
    Intent intent = new Intent(ListaFicheros.this,InterfazLector.class);
    intent.putExtra("PATH", paths.get(IDFilaSeleccionada));
    intent.putExtra("NOMBRE", elementos.get(IDFilaSeleccionada));
    DoVibration.OK((Vibrator) getSystemService(Context.VIBRATOR_SERVICE));
    startActivityForResult(intent, ID);
}`