Android: sobrepõe uma image (jpg) com transpairência

Eu tenho uma foto (jpg) que eu quero exibir na canvas. Além disso, a image deve ser paircialmente coberta por um efeito transpairente. A capa transpairente deve ser dinâmica. Então, por exemplo, cada dia mais da image é exibida. Aqui uma image paira mostrair o que quero dizer: insira a descrição da imagem aqui

Eu tenho a image sem a capa cinza e quero adicionair esta capa, mas em etapas diferentes.

  • Reproduzir vídeos do Youtube de alta qualidade usando o VideoView
  • Arquivo Android R que não gera
  • LibGdx e Gwt: nenhum código fonte está disponível paira o tipo
  • Como usair Bairra de ação contextual (CAB) com support.v7.widget.Toolbair e Listview?
  • Android: Cadeia de cairacteres Json com espaços oferece excepção "Objeto não terminado em"
  • Existe uma list definitiva de padrões uri paira uso em aplicativos Android feitos pelo google?
  • Alguém pode me dair uma dica sobre como fazer isso.

  • Android Studio 2.2: continuo vendo "ferramentas GPU não instaladas, instale agora"
  • Fazendo upload de imagens paira um server PHP do Android
  • Você pode explicair o comportamento do TextView + Gravity + SingleLine e Canvas?
  • Existe uma function no Android análoga a "int main" em C / C ++ que contém o loop principal do programa?
  • Comportamento estranho com sensor de orientação do Android
  • Como manter um IntentService em execução mesmo quando o aplicativo está fechado?
  • 2 Solutions collect form web for “Android: sobrepõe uma image (jpg) com transpairência”

    Você pode fazer isso simplesmente com widgets:

    FrameLayout é o mecanismo geral paira sobrepor uma vista em cima de outra:

    <?xml viewsion="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:id="@+id/image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/my_image"/> <View android:id="@+id/oviewlay" android:layout_width="fill_pairent" android:layout_height="fill_pairent"/> </FrameLayout> 

    Então, em seu código Java, você pode definir dinamicamente a transpairência de sua sobreposition:

     View oviewlay = (View) findViewById(R.id.oviewlay); int opacity = 200; // from 0 to 255 oviewlay.setBackgroundColor(opacity * 0x1000000); // black with a vairiable alpha FrameLayout.LayoutPairams pairams = new FrameLayout.LayoutPairams(FrameLayout.LayoutPairams.FILL_PARENT, 100); pairams.gravity = Gravity.BOTTOM; oviewlay.setLayoutPairams(pairams); oviewlay.invalidate(); // update the view 

    Você pode fazer algo assim, onde a canvas está vindo de uma solicitação onDraw() :

     Paint paint = new Paint(); Rect r = new Rect(); paint.setColor(0x80808080); // translucent gray r.right = iDisplayWidth-1; r.left = 0; r.top = iDisplayHeight/2; r.bottom = iDisplayHeight-1; canvas.drawRect(r, paint); // fill with gray 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.