2012-07-25 8 views
1

콘텐츠를 arraylist에 넣고 목록보기를 통해 볼 수있는 sqlite DB가있는 응용 프로그램이 있습니다. 내 문제는 알파벳순으로 항목을 가져올 수 없다는 것입니다. Collections.sort()을 구현했지만 바운드 불일치 오류가 발생합니다. 어떤 아이디어바운드가 collections.sort와 일치하지 않음

오류 :

바운드 불일치 : 유형 Collections의 일반적인 방법 sort(List<T>)는 인수 (ArrayList<LoginDetails>) 적용되지 않습니다. Collections.sort에 대한 API 문서에 설명 된 바와 같이

public class LoginDetails { 

private String sName; 
private String wUrl; 
private String uName; 
private String pWord; 

public String getsName() { 
return sName; 
} 
public void setsName(String sName) { 
this.sName = sName; 
} 

public String getwUrl() { 
return wUrl; 
} 
public void setwUrl(String wUrl) { 
this.wUrl = wUrl; 
} 

public String getuName() { 
return uName; 
} 
public void setuName(String uName) { 
this.uName = uName; 
} 
public String getpWord() { 
return pWord; 
} 
public void setpWord(String pWord) { 
this.pWord = pWord; 
} 

} 
+4

합니까''Comparable'을 구현 LoginDetails'? –

+0

LoginDetails 클래스 선언을 추가하는 것이 유용 할 것입니다. –

+0

체재, 로그인 세부 사항 종류는 추가되었다. – user1165694

답변

4

, : 유추 유형 LoginDetails<T extends Comparable<? super T>>

private ListView loginList; 
private Button webLogin; 
private ListAdapter loginListAdapter; 
private ArrayList<LoginDetails> loginArrayList; 

    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.login_listview); 


    loginList = (ListView) 
    findViewById(R.id.loginlist); 
    loginList.setOnItemClickListener(this); 

    webLogin = (Button) 
    findViewById(R.id.button3); 
    webLogin.setOnClickListener(this); 

    loginArrayList = new ArrayList<LoginDetails>(); 
    loginListAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, populateList()); 
    loginList.setAdapter(loginListAdapter); 

    Collections.sort(loginArrayList); //Bound mismatch error is here. 
    } 

LoginDetails 바운딩 매개 변수에 대한 유효한 대체 할 수 없습니다

All elements in the list must implement the Comparable interface.

이 있는지 확인 LoginDetailsComparable을 구현합니다. 예를 들어

:

public class LoginDetails implements Comparable<LoginDetails>{ 
    //...   

    @Override 
    public int compareTo(LoginDetails another) { 
     return uName.compareTo(another.uName); 
    } 

    //... 
관련 문제