1

在這裏我有一個AutoCompleteTextView和一個圖像查看它;是一個箭頭放在這AutoCompleteTextView正好右側。當我點擊該圖片圖標我需要這個AutoCompleteTextView是在編輯形式意味着同樣的效果,當我們在這個AutoCompleteTextView我需要AutoCompleteTextView在可編輯格式點擊圖像圖標

<AutoCompleteTextView 
      android:background="@android:color/transparent" 
      android:id="@+id/auto" 
      android:textStyle="bold" 
      android:hint="Select Location" 
      android:textColor="#ffffff" 
      android:layout_width="wrap_content" 
      android:layout_marginTop="10dp" 
      android:layout_marginBottom="10dp" 
      android:layout_height="match_parent" 
      android:layout_alignParentEnd="true" 
      android:layout_alignParentRight="true" 
      android:dropDownWidth="match_parent"/> 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:onClick="dropclick" 
       android:src="@mipmap/ic_keyboard_arrow_down_black_24dp"/> 

</android.support.v7.widget.Toolbar> 
+0

這是你在找什麼? https://developer.android.com/reference/android/widget/AutoCompleteTextView.html#attr_android:dropDownAnchor – Ivan

+0

你想要一個帶有旋鈕的'AutoCompleteTextView'?因爲如果是的話,我已經將所有代碼編寫成了我在項目中實現的代碼。 –

回答

0

直接接觸,你可以使用EditSpinner自動完成微調庫。適配器

<com.reginald.editspinner.EditSpinner 
    android:id="@+id/autocomplete" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:dropDownDrawable="@mipmap/ic_keyboard_arrow_down_black_24dp" 
    app:dropDownDrawableSpacing="35dp" /> 

準備:

將它添加到搖籃:

compile 'com.reginald:editspinner:1.0.0' 

添加視圖以XML文件

ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(this, R.layout.spinner_item, itemList); 

一套適配器將EditSpinner

autoCompleteOperationDetail.setAdapter(operationDetailArrayAdapter); 
0

通過回答Quessema Aroua是好的,但這是你可以做什麼,沒有圖書館。
在XML中實現此代碼。

<AutoCompleteTextView 
      android:layout_width="0dp" 
      android:layout_height="30dp" 
      android:hint="@string/source" 
      android:id="@+id/actv5" 
      app:layout_constraintTop_toBottomOf="@+id/actv4" 
      app:layout_constraintLeft_toLeftOf="parent" 
      app:layout_constraintRight_toRightOf="parent" 
      android:background="@drawable/side_nav_bar" 
      android:textAlignment="center" 
      android:gravity="center" 
      android:layout_marginTop="50dp" 
      android:dropDownHeight="155dp" 
      android:cursorVisible="false"/> 
     <ImageView 
      android:layout_width="35dp" 
      android:layout_height="35dp" 
      android:id="@+id/imv2" 
      android:src="@drawable/ic_keyboard_arrow_down_black_24dp" 
      app:layout_constraintTop_toTopOf="@+id/actv5" 
      app:layout_constraintBottom_toBottomOf="@+id/actv5" 
      app:layout_constraintRight_toRightOf="@+id/actv5" 
      /> 

你可以選擇你需要的任何佈局,但我的是ConstraintLayout
而這YourActivity.java

locnames = getResources().getStringArray(R.array.Loc_names); 
    final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(
        this, android.R.layout.simple_spinner_dropdown_item, 
        locnames); 

      autoText1 =(AutoCompleteTextView) findViewById(R.id.actv4); 
      autoText1.setAdapter(arrayAdapter); 
      autoText1.setThreshold(1); 
      autoText1.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
       @Override 
       public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
        //autoText1.showDropDown(); 
        hideKeyBoard(view); 
        //String selection = (String) parent.getItemAtPosition(position); 
        selected = position; 
       } 
      }); 
      /*autoText1.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(final View arg0) { 

        autoText1.showDropDown(); } 
      });*/ 

      ImageView imageView = (ImageView) findViewById(R.id.imv1); 
      imageView.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(final View arg0) { 

        autoText1.showDropDown(); } 
      }); 

你也應該建立locnames的字符串作爲礦山的strings.xml是這樣的:在YourActivity代碼

<string-array name="Loc_names"> 

     <item>India</item> 
     <item>America</item> 
     <item>Germany</item> 
     <item>Russia</item> 
     <item>Australia</item> 
     <item>China</item> 
</string-array> 

消息部分。 java在這裏通過點擊AutoCompleteTextView上的任何地方顯示相同的彈出/微調,這消除了使用ImageView(箭頭)的需要,但您需要ImageView這就是爲什麼我已將此代碼作爲消息/評論的原因。

/*autoText1.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(final View arg0) { 

         autoText1.showDropDown(); } 
       });*/ 

由於我直接從我的項目中複製了這個,所以應該根據你的情況替換所有的id /名稱。

某些圖像爲參考

  1. 這是正常AutoCompleteTextView

enter image description here

  • 這是AutoCompleteTextViewSpinner
  • enter image description here

  • 這是AutoCompleteTextView一些文本輸入和文本 在所說的紡絲器過濾。 enter image description here