2013-04-05 9 views
5

मेरे आवेदन में मैं एक ऑटो-पूर्ण-पाठ का उपयोग कर रहा हूं। उपयोगकर्ता प्रकार टी यह तीन, दो, पचास से पता चलता है, लेकिन मैं दो, तीन नहीं पचास दिखाना चाहते हैं। क्या कोई इस समस्या को हल करने में मेरी मदद कर सकता है।एंड्रॉइड में स्वतः पूर्ण पाठ?

String search[] = {"one","two","three","four","five","six","seven","fifty"};  

ArrayAdapter<String> adp= new ArrayAdapter<String>(this,R.layout.searchtext, search); 
    search_item.setThreshold(1); 
    search_item.setAdapter(adp); 
+0

आदर्श रूप में आप के लिए 2-3 नहीं 1 सीमा निर्धारित शॉट, यह बहुत ज्यादा दिखाई और प्रसंस्करण बहुत समय बर्बाद करने के लिए कारण होगा। – JoxTraex

+1

फ़िल्टर के साथ कस्टम एडाप्टर का उपयोग करने के लिए आपको फ़िल्टर – Pragnani

+0

@Pragnani के साथ अपना कस्टम एडपटर बनाने की आवश्यकता है। – Yugesh

उत्तर

3

मुझे नहीं लगता कि आपको कस्टम एडाप्टर बनाना है। इसकी डिफ़ॉल्ट कार्यक्षमता जो आप चाहते हैं। जाँच इस

यहाँ मैं की तरह सरणी है:

private static final String[] COUNTRIES = new String[] { "Belgium", 
     "France", "France_", "Italy", "Germany", "Spain","abcf","FFa","FFb","bFF","aFF" }; 

जब मैं खोज एफएफ तो इसकी मुझे केवल 2("FFa","FFb") सुझाव देना मैं ActionBar में इस का इस्तेमाल किया है नहीं 4("FFa","FFb","bFF","aFF")

enter image description here

। आप इसे लेआउट में भी इस्तेमाल कर सकते हैं। क्योंकि एक्शनबार में इसका कस्टम लेआउट।

public class TestActivity extends Activity { 

    /** Called when the activity is first created. */ 
    private static final String[] COUNTRIES = new String[] { "Belgium", 
     "France", "France_", "Italy", "Germany", "Spain","abcf","FFa","FFb","bFF","aFF" }; 

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

     setContentView(R.layout.activity_main); 

     ActionBar actionBar = getActionBar(); 
     actionBar.setDisplayHomeAsUpEnabled(true); 
     actionBar.setDisplayShowCustomEnabled(true); 
     // actionBar.setDisplayShowTitleEnabled(false); 
     // actionBar.setIcon(R.drawable.ic_action_search); 

     LayoutInflater inflator = (LayoutInflater) this 
       .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View v = inflator.inflate(R.layout.test, null); 

     actionBar.setCustomView(v); 

     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
       android.R.layout.simple_dropdown_item_1line, COUNTRIES); 
     AutoCompleteTextView textView = (AutoCompleteTextView) v 
       .findViewById(R.id.editText1); 
     textView.setAdapter(adapter); 

    } 
} 

test.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:gravity="center" > 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Action Bar:" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:textColor="#FFFFFF" /> 

    <AutoCompleteTextView 
     android:id="@+id/editText1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:ems="10" 
     android:imeOptions="actionSearch" 
     android:inputType="textAutoComplete|textAutoCorrect" 
     android:textColor="#FFFFFF" > 

     <requestFocus /> 
    </AutoCompleteTextView> 

</LinearLayout> 
संबंधित मुद्दे