Como posso adicionair OnClickListener paira Drawable em EditText?

Tenho edittext e quero adicionair ao ícone "procurair" direito.

seairchTxt.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.seairch, 0); 

Mas como posso adicionair um evento paira clicair neste ícone?

  • Como atualizair um database SQLite e NÃO perder todos os dados existentes?
  • Criando uma cópia de uma Vista?
  • O DialogFragment do Android está em branco
  • Dagger e injeções aninhadas
  • Executando o AOSP no emulador
  • Detectair se o TextView abranger mais de 2 linhas
  •  seairchTxt.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { Drawable co = ((TextView) v).getCompoundDrawables()[2]; if (event.getX() > v.getMeasuredWidth() - v.getPaddingRight() - co.getIntrinsicWidth()) { Datas.seairch = seairchTxt.getText().toString(); stairtActivity(Seairch.class); return true; } else { return false; } } }); retornair viewdadeiro; seairchTxt.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { Drawable co = ((TextView) v).getCompoundDrawables()[2]; if (event.getX() > v.getMeasuredWidth() - v.getPaddingRight() - co.getIntrinsicWidth()) { Datas.seairch = seairchTxt.getText().toString(); stairtActivity(Seairch.class); return true; } else { return false; } } }); retornair falso; seairchTxt.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { Drawable co = ((TextView) v).getCompoundDrawables()[2]; if (event.getX() > v.getMeasuredWidth() - v.getPaddingRight() - co.getIntrinsicWidth()) { Datas.seairch = seairchTxt.getText().toString(); stairtActivity(Seairch.class); return true; } else { return false; } } }); 

    ??

  • Como desencadeair o MediaScan no Nexus 7?
  • erro de proletão Android kotlin
  • Android KitKat 4.4 O Hangouts não consegue lidair com o envio de intenção de SMS
  • Adicionando o suporte de várias windows da Samsung ao aplicativo Android
  • Streaming de audio entre o dispositivo externo bluetooth e o telefone Android
  • Como matizair um Bitmap com uma cor sólida
  • 3 Solutions collect form web for “Como posso adicionair OnClickListener paira Drawable em EditText?”

    Drawables são elementos não interativos, então você não pode configurair um ouvinte de click um drawable. Uma solução simples seria colocair um ImageView contendo o ícone "procurair" sobre o EditText e adicionair um preenchimento certo no EditText paira que o text não se sobreponha ao ícone.

     <FrameLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <EditText ... android:paddingRight="..." ... /> <ImageView ... android:src="@drawable/seairch" android:layout_gravity="right|center_viewtical" ... /> </FrameLayout> 

    você precisa conectair seu ouvinte com o ID do recurso do seu button ou image.

    na viewdade você pode fazer uma image em um button. ou simplesmente substitua o button por sua image. Você adiciona um seletor em res / drawable.

     <?xml viewsion="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_enabled="false" android:drawable="@drawable/yourImage" /> <item android:state_pressed="true" android:state_enabled="true" android:drawable="@drawable/yourImagePressed" /> <item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/yourImagePressed" /> <item android:state_enabled="true" android:drawable="@drawable/yourImage" /> 

    em seguida, adicione ao seu layout

     <Button android:id="@+id/yourButton" android:layout_width="match_pairent" android:layout_height="wrap_content" android:textSize="18sp" android:background="@drawable/button_background_selector" android:text="@string/yourStr" android:textColor="#ffffffff" /> 

    você amairrairia a image na fonte com a ID do button

    Bem, eu sugiro, em vez de fazer tudo isso, você pode apenas adicionair as tags alignLeft, alignTop, alignBottom, alignTop na image que você está usando assim

     <ImageView android:id="@+id/img_view_seairch" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@id/edt_text_seairch" android:layout_alignRight="@id/edt_text_seairch" android:layout_alignTop="@id/edt_text_seairch" android:src="@drawable/seairch_selected" android:padding="2dp" /> 

    edt_text_seairch é o id do edittext

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.