2011-02-14 5 views
4

안녕하세요. 모두 SD 카드에 오디오를 저장하는 앱이 있습니다. 나는 sdcard에서 파일 이름을 검색하는 listview를 만들었습니다. 나는 파일 이름을 클릭 할 때 그 파일을 재생하는 다른 인 텐트를 시작할 수 있도록 청취자를 설정하려고합니다. 내가 Listener를 설정하고 새로운 OnItemClickListener()에 전달하려고하면 이클립스는 빨간색 밑줄을 그립니다. onItemclick()을 구현해야한다는 것을 이해합니다. 여기서는 의도가 있어야한다고 생각합니다. 어떤 아이디어?listview의 항목에 대해 setOnItemClickListener 사용

감사

코드 : 코드가 제대로 작동

package com.tecmark; 

import java.io.File; 
import java.util.ArrayList; 

import android.app.Activity; 
import android.os.Bundle; 
import android.os.Environment; 
import android.util.Log; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 
import android.widget.AdapterView.OnItemClickListener; 
import android.widget.AdapterView.OnItemSelectedListener; 

public class SdGetList extends Activity { 
    private ListView lv1; 
    private String[] lv_arr; 
    private ArrayList<String> arr; 

    @Override 
    public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 
     setContentView(R.layout.listlayout); 
     arr = new ArrayList<String>(); 

     File sdCardRoot = Environment.getExternalStorageDirectory(); 
     Log.i("root on sd =", ""+ sdCardRoot.getPath()); 

     for (File f : sdCardRoot.listFiles()) { 
      if (f.isFile()){ 
       String name = f.getName(); 
       arr.add(name); 
       Log.i("arr is empty?******", ""+arr.isEmpty()); 
      } 
      else { 
       Log.i("file", " no file"); 
      } 
      Log.i("arr******", ""+arr.size()); 
     } 
     lv_arr = new String[arr.size()]; 

     for(int i=0 ; i<arr.size();i++) { 
      lv_arr[i] = arr.get(i); 
     } 

     lv1=(ListView)findViewById(R.id.ListView01); 
     // By using setAdpater method in listview we an add string array in list. 
     lv1.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , lv_arr)); 
     lv1.setOnItemClickListener(new OnItemClickListener() { 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      } 
     }); 
    } 
} 
+0

이클립스 레드 밑줄이란 무엇입니까? OnItemClickListener 또는 여기에 나열되지 않은 onItemClick 메서드에 넣는 코드는 무엇입니까? 어쨌든, 이클립스는 왜 그것이 빨간색 밑줄을 그려 놓았는지에 대한 피드백을 얻는 것에 대해 꽤 좋다. – Rich

답변

14
list.setOnItemClickListener(new OnItemClickListener() { 
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { 
     Intent i = new Intent(ClassName.this,CourtDetailActivity.class); 
     startActivity(i); 
    }); 
} 

이되고 난 당신의 부분을 가져 오려면이 라인을 넣어 타격 패키지

import android.widget.AdapterView.OnItemClickListener; 

를 가져올 것 같아요 신청서 도움이되기를 바랍니다.

2

Java 파일에서 클래스 가져 오기를 확인하십시오. Eclipse에서 : Ctrl + Shift + O

관련 문제