Почему андроид: FLAG_BLUR_BEHIND создания градиента фона в моей новой деятельности вместо bluring окна?

голоса
1

У меня есть два вида деятельности. Один должен быть пятном перед другими.

Фоновая активность имеет несколько ImageViews, которые создаются как тонкие градиенты, проходящие через большую часть экрана и 10dip высокой. При запуске второй активности он устанавливает фон, как градиент, занимающий всю площадь окна, то есть, как представляется, fill_parent'd как для высоты и ширины. Если я закомментируйте ImageViews тогда она размывает и выглядит, как и ожидалось.

Есть предположения?

Вот код делает размытость.

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.view.View.OnClickListener;

public class TransluscentBlurSummaryB extends Activity {
 @Override
    protected void onCreate(Bundle icicle) {
        super.onCreate(icicle);

        getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,
                WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
        getWindow().getAttributes().dimAmount = 0.5f;
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND,
          WindowManager.LayoutParams.FLAG_DIM_BEHIND);

        setContentView(R.layout.sheetbdetails);

        OnClickListener clickListener = new OnClickListener() {
            public void onClick(View v) {
             TransluscentBlurSummaryB.this.finish();
            }
        };

        findViewById(R.id.sheetbdetailstable).setOnClickListener(clickListener);

    }
}

А вот макет с ImageView градиентов.

<?xml version=1.0 encoding=utf-8?>
<RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android
 android:layout_width=fill_parent
    android:layout_height=fill_parent
    android:id=@+id/summarysparent >
   <!-- view1 goes on top -->

   <RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android 
        android:id=@+id/view2 
        android:layout_width=fill_parent 
        android:layout_height=wrap_content 
        android:layout_alignParentBottom=true>   
     <Button android:layout_height=wrap_content 
      android:id=@+id/ButtonBack 
      android:layout_width=wrap_content 
      android:text=Back 
      android:width=100dp></Button>
     <Button android:layout_height=wrap_content 
      android:id=@+id/ButtonNext 
      android:layout_width=wrap_content 
      android:layout_alignParentRight=true 
      android:text=Start Over 
      android:width=100dp></Button>
 </RelativeLayout>

    <TextView
        android:id=@+id/view1
        android:layout_height=wrap_content
        android:layout_alignParentTop=true
        android:layout_width=wrap_content 
        android:layout_centerHorizontal=true 
        android:textSize=10pt android:text=Summary/>

 <ScrollView  xmlns:android=http://schemas.android.com/apk/res/android
     android:layout_width=fill_parent
     android:layout_height=wrap_content
     android:id=@+id/summaryscrollview
     android:layout_below=@+id/view1
     android:layout_above=@+id/view2>

     <RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android
      android:layout_width=fill_parent
      android:layout_height=wrap_content
      android:id=@+id/summarydetails >

      <!-- view2 goes on the bottom -->

      <TextView android:id=@+id/textview2
       android:layout_height=wrap_content
       android:layout_width=wrap_content
       android:layout_below=@+id/view1
       android:layout_centerHorizontal=true
       android:text=Recommended Child Support Order 
       android:layout_marginTop=10dip />

      <ImageView
    android:id=@+id/horizontalLine1
    android:layout_width=fill_parent
    android:layout_marginLeft=5dip
    android:layout_marginRight=5dip
    android:layout_height=10dip
    android:src=@drawable/black_white_gradient
    android:layout_below=@+id/textview2
    android:layout_marginTop=10dip 
    /> 

      <TextView android:id=@+id/textview3
       android:layout_height=wrap_content
       android:layout_width=wrap_content
       android:layout_below=@+id/horizontalLine1
       android:layout_centerHorizontal=true
       android:text=You 
       android:layout_marginTop=10dip />

      <TextView android:id=@+id/textview10
       android:layout_height=wrap_content
       android:layout_width=150dp
       android:layout_below=@+id/textview3
       android:layout_centerHorizontal=true
       android:layout_marginTop=10dip
       android:gravity=center_horizontal />

      <ImageView
    android:id=@+id/horizontalLine2
    android:layout_width=fill_parent
    android:layout_marginLeft=5dip
    android:layout_marginRight=5dip
    android:layout_height=10dip
    android:src=@drawable/black_white_gradient
    android:layout_below=@+id/textview10
    android:layout_marginTop=10dip /> 

      <TextView android:id=@+id/textview4
       android:layout_height=wrap_content
       android:layout_width=wrap_content
       android:layout_below=@+id/horizontalLine2
       android:layout_centerHorizontal=true
       android:text=Other Parent 
       android:layout_marginTop=10dip />

      <TextView android:id=@+id/textview11
       android:layout_height=wrap_content
       android:layout_width=150dp
       android:layout_below=@+id/textview4
       android:layout_centerHorizontal=true 
       android:layout_marginTop=10dip 
       android:text=$536.18 
       android:gravity=center_horizontal />

      <ImageView
    android:id=@+id/horizontalLine3
    android:layout_width=fill_parent
    android:layout_marginLeft=5dip
    android:layout_marginRight=5dip
    android:layout_height=10dip
    android:src=@drawable/black_white_gradient
    android:layout_below=@+id/textview11
    android:layout_marginTop=10dip /> 

      <TextView android:id=@+id/textview5
       android:layout_height=wrap_content
       android:layout_width=wrap_content
       android:layout_below=@+id/horizontalLine3
       android:layout_centerHorizontal=true
       android:text=Calculation Details 
       android:layout_marginTop=15dip />

      <ImageView android:id=@+id/infoButton
       android:src=@drawable/ic_menu_info_details
       android:layout_height=wrap_content
       android:layout_width=wrap_content
       android:layout_below=@+id/horizontalLine3
       android:layout_toRightOf=@+id/textview5 
       android:clickable=true
       />

      <ImageView
    android:id=@+id/horizontalLine4
    android:layout_width=fill_parent
    android:layout_marginLeft=5dip
    android:layout_marginRight=5dip
    android:layout_height=10dip
    android:src=@drawable/black_white_gradient
    android:layout_below=@+id/textview5
    android:layout_marginTop=18dip />

  </RelativeLayout>
 </ScrollView>
</RelativeLayout>

Градиент вытяжка это.

<?xml version=1.0 encoding=utf-8?>
<shape xmlns:android=http://schemas.android.com/apk/res/android android:shape=rectangle>
    <gradient 
     android:startColor=#FFFFFF android:centerColor=#000000 android:endColor=#FFFFFF 
            android:angle=270/>
    <padding android:left=7dp android:top=7dp
            android:right=7dp android:bottom=7dp />
    <corners android:radius=8dp />
</shape>

А вот расположение от активности делает размытие сверху.

<?xml version=1.0 encoding=utf-8?>
<ScrollView xmlns:android=http://schemas.android.com/apk/res/android
 android:id=@+id/sheetbdetails
 android:layout_width=fill_parent
   android:layout_height=fill_parent 
   android:clickable=true >
 <TableLayout xmlns:android=http://schemas.android.com/apk/res/android
     android:layout_width=fill_parent
     android:layout_height=fill_parent
     android:scrollbars=vertical
     android:shrinkColumns=0
     android:id=@+id/sheetbdetailstable >

     <TableRow>
         <TextView

             android:padding=3dip />
         <TextView
             android:text=You
             android:padding=3dip />
         <TextView
             android:text=@string/otherparent
             android:padding=3dip />
            <TextView
             android:text=Combined
             android:padding=3dip />
     </TableRow>

 </TableLayout>
</ScrollView>

Прозрачные окна тематические из styles.xml в apidemos, используя @ стиль / Theme.Transparent.

Задан 13/06/2010 в 18:00
источник пользователем
На других языках...                            


1 ответов

голоса
1

Я думаю, когда вы хотите, чтобы дать больше, чем один флагов использовать addFlags (WindowManager.LayoutParams.FLAG_BLUR_BEHIND) вместо setFlags () .... что работает для меня ...

Ответил 17/10/2011 в 13:12
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more