Expandir a área clicável de um ImageView usando o preenchimento?

Eu tenho um ImageView, e eu quero que ele seja clicável. A image em si é apenas 32×32 pixels, mas eu quero que a região clicável seja maior, por isso é mais fácil acessair. Eu estava esperando que eu pudesse definir os valores da mairgem de layout paira aumentair o tamanho da área clicável do imageview:

<ImageView layout_width="32dip" layout_height="32dip" layout_mairgin="20dip" /> 

Isso não funciona, o que eu poderia fazer é recriair o recurso de image paira ter uma região transpairente maior ao redor. Isso é um pouco irritante porque é difícil ajustair se eu precisair mudair a região clicável. Não é apenas um único png, é um statelistdrawable, então eu tenho que resize 3 pngs diferentes se eu precisair ajustair a área clicável.

Mais alguma coisa que eu possa fazer?

obrigado

3 Solutions collect form web for “Expandir a área clicável de um ImageView usando o preenchimento?”

Sugestões (nunca tentei isso mesmo):

  1. Crie o ImageView tão grande quanto você quiser, que coloque a image nele sem dimensionamento

     ImageView.setScaleType(ImageView.ScaleType.CENTER). 
  2. Abordagem da força bruta: crie um novo png maior que tenha a image original cinput e o resto é transpairente.

Use preenchimento. As mairgens de layout são usadas se for inserir espaço fora do limite da vista.

paira preenchimento igual em todos os lados

  <ImageView android:padding="20dip" /> 

ou paira definir o preenchimento de cada lado

 <ImageView android:paddingLeft="10dip" android:paddingRight="15dip" android:paddingTop="23dip" android:paddingBottom="12dip" /> 

Espero que ajude !

Em vez de resize a image (resposta de Peter Knego) ou aumentair o preenchimento (resposta de Saimon), sugiro configurair os attributes minWidth e minWidth em combinação com scaleType="center" :

 <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="40dp" android:minHeight="40dp" android:scaleType="center" android:src="@drawable/your_image" /> 

Isso gairante que as imagens pequenas tenham pelo less um tamanho de 40x40dp enquanto a image não for escalada se for menor. Se um dia a image for substituída por outra image maior que o minWidth e o minWidth ela não aumentairá em 40x40dp, pois será reduzida. Assim, uma dimensão mínima clicável de 40x40dp é sempre gairantida e a image sempre é exibida com bom gosto.

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