2011-12-22 2 views
2

私はレポからダウンロードし、線形レイアウトの背後にある背景にフェードインした退色した背景イメージがあるようなアクティビティのようなWikiを実行しようとしています。私には3つの問題があります。バックグラウンドイメージを背景に薄く設定する

XMLは:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <ImageView 
     android:id="@+id/bg_image" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:cropToPadding="true" 
     android:scaleType="centerCrop" /> 
    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#00000000" 
     android:textColor="#FFFFFF" > 
     <LinearLayout>Several layouts within here....</LinearLayout> 
    </LinearLayout> 
</FrameLayout> 

1)私は、画像を表示するために得ることができますが、私は別のアプリを開くまでのLinearLayout内のいくつかのいくつかの要素が透明でない、そして私のアプリに戻ります。私は、奇妙なビューのキャッシュがアンドロイドに組み込まれていると思うので、直線レイアウトのようなものには堅実な背景があります。

2)画像が背景に「色あせ」されることはありません。私はほとんどイメージを暗くしたいので、その上のテキストがより目立つようにしたい。これは画像の不透明度ですか?

3)フェードインするアニメーションが機能しません。 AsyncTaskを使用してバックグラウンドを設定するリスナーにコールバックしています。ここでは、InfoActivity私が活動に使用したコードです:fadein_bg.xmlで

bg =(ImageView)findViewById(R.id.bg_image); 
public void onBgImageResponse(Bitmap background) { 
    if(background != null) { 
     bg.setAlpha(50); 
     bg.setImageBitmap(background); 
     Animation myFadeInAnimation = AnimationUtils.loadAnimation(InfoActivity.this, R.anim.fadein_bg); 
     bg.setBackgroundDrawable(new BitmapDrawable(this.getResources(), background)); 
     bg.startAnimation(myFadeInAnimation); 
    } 
} 

は私が持っている:

<?xml version="1.0" encoding="UTF-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android"> 
    <alpha android:fromAlpha="0.0" 
     android:toAlpha=".5" 
     android:interpolator="@android:anim/accelerate_interpolator" 
     android:duration="2000" android:repeatCount="infinite"/> 
</set> 

すべてのヘルプは大歓迎です。私は必要に応じて賞金を出します。

答えて

1
  1. これは、キャッシングの可能性が高いためです。イメージが実際に正しく設定されているかどうかを確認します。あなたの意見を適切に設定/リフレッシュしないように思えます。

  2. この画像にアルファベットを設定する必要があります: image.setAlpha(x); // xはあなたが望むアルファベットです

  3. 削除 'bg.setImageBitmap(background);'最後にアルファを設定します。

あなたのfadedin xmlでrepeatCountとinterpolatorを削除して、それが役立つかどうか試してみてください。

+0

繰り返しカウントと補間が問題でした – Du3

関連する問題