2017-01-01 71 views
-1

我试图将这个search box实现到我的项目中。 我需要创建一个列表,其中包括所有的建议,当用户在文本区域键入一些文本,但我卡住了。将值添加到扩展可parcelable的对象 - Android

我需要创建的列表中有这种形式:

List<? extends SearchSuggestion> 

和SearchSuggestion是延伸Parcelable接口:

import android.os.Parcelable; 

public interface SearchSuggestion extends Parcelable{ 
    String getBody(); 
} 

我想我必须创建一个实现SearchSuggestion一类,并把那里有一些价值?

这样的事情?

public class MyClass implements SearchSuggestion { 
    public String mystring; 

    public MyClass(String text){ 
     this.mystring = text; 
    } 
} 

我真的不知道如何处理这个问题。 我不知道还有什么可以发布在这里帮助你,所以如果你需要任何东西告诉我。

+0

所以你尝试过这么远吗?你有没有回顾你提到的github的代码? –

回答

0

当你实现SearchSuggestion它给你的方法String getBody();

因此你的对象应该是这样的:

public class MyClass implements SearchSuggestion { 
    private final String myString; 

    public MyClass(String text){ 
     this.myString = text; 
    } 

    @Override 
    public String getBody() { 
      return myString; 
    } 
} 

而且列表不需要一个通配符(?),它可以仅仅是:

List<SearchSuggestion> 

所有这一切都在您链接回购的自述文件中解释:

https://github.com/arimorty/floatingsearchview/blob/master/README.md

它有一个演示,做你在找什么:

https://github.com/arimorty/floatingsearchview/blob/ef70366635e19ba1c1337c7df7b2941f8856f756/sample/src/main/java/com/arlib/floatingsearchviewdemo/data/ColorSuggestion.java

&

https://github.com/arimorty/floatingsearchview/blob/ef70366635e19ba1c1337c7df7b2941f8856f756/sample/src/main/java/com/arlib/floatingsearchviewdemo/data/DataHelper.java#L69

&

https://github.com/arimorty/floatingsearchview/blob/957d726ce0ac31c5db9ae0b55bf29878fa6aafb7/sample/src/main/java/com/arlib/floatingsearchviewdemo/fragment/ScrollingSearchExampleFragment.java#L144

显示你添加你这样的建议:

searchView.swapSuggestions(yourListOfSuggestions); 
+0

谢谢你的努力。 – student