Advertisement
Guest User

Untitled

a guest
Apr 24th, 2014
21
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 9.02 KB | None | 0 0
  1.  
  2.  
  3. import ru.customcomponents.FastBlur;
  4. import ru.customcomponents.deletoutofmemory.RecyclingBitmapDrawable;
  5. import ru.donstroy.parusamobile.MainActivity;
  6. import ru.donstroy.parusamobile.R;
  7. import android.app.Activity;
  8. import android.content.Intent;
  9. import android.graphics.Bitmap;
  10. import android.graphics.BitmapFactory;
  11. import android.graphics.Canvas;
  12. import android.graphics.Paint;
  13. import android.graphics.drawable.BitmapDrawable;
  14. import android.graphics.drawable.Drawable;
  15. import android.graphics.drawable.LayerDrawable;
  16. import android.os.Bundle;
  17. import android.view.View;
  18. import android.view.ViewGroup.LayoutParams;
  19. import android.view.ViewTreeObserver;
  20. import android.widget.AbsListView.RecyclerListener;
  21. import android.widget.AdapterView;
  22. import android.widget.Gallery;
  23. import android.widget.ImageButton;
  24. import android.widget.ImageView;
  25. import android.widget.LinearLayout;
  26. import android.widget.TextView;
  27.  
  28. public class VerboseMediaArhitechture extends Activity {
  29.  
  30.     public static int[] DataImg;
  31.     public static int[] DataText;
  32.     ImageView picture;
  33.     TextView description;
  34.     ImageButton hide;
  35.     Bitmap bg;
  36.     static ImageView leftImage;
  37.     static ImageView rightImage;
  38.     static boolean hideShow=true;
  39.     Gallery gallery;
  40.     @Override
  41.     protected void onCreate(Bundle savedInstanceState) {
  42.         super.onCreate(savedInstanceState);
  43.         setDataImage();
  44.         setContentView(R.layout.verbose_media_arhitechture);
  45.          
  46.         picture=(ImageView) findViewById(R.id.MediaPicture);
  47.         gallery=(Gallery) findViewById(R.id.MediagGallery);
  48.         description=(TextView) findViewById(R.id.mediaImageDescription);
  49.         hide=(ImageButton) findViewById(R.id.mediaHideBt);  
  50.         leftImage=(ImageView) findViewById(R.id.leftImage);
  51.         rightImage=(ImageView) findViewById(R.id.rightImage);
  52.          
  53.         leftImage.setImageBitmap(BitmapFactory.decodeResource(MainActivity.resourcesApp, R.drawable.pattern));
  54.          
  55.          
  56.          
  57.         gallery.setAdapter(new GalleryAdapter(this));
  58.          
  59.          
  60.         picture.setImageBitmap(GalleryAdapter.decodeSampledBitmapFromResource(MainActivity.resourcesApp,DataImg[0], MainActivity.WidthSreenSize, MainActivity.HightSreenSize));
  61.          
  62.         gallery.setSelection(6);
  63.          
  64.         hide.setOnClickListener(new View.OnClickListener() {
  65.              
  66.             @Override
  67.             public void onClick(View v) {
  68.                 if(hideShow){
  69.                 description.setText("");
  70.                 description.setBackgroundDrawable(null);
  71.                 applyBlur(hide,picture);
  72.                 hide.setImageResource(R.drawable.button_show);
  73.                 hideShow=false;
  74.                 applyBlur(rightImage,leftImage);
  75.                 }
  76.                 else{
  77.                      
  78.                     applyBlur(description,picture);
  79.                     description.setText("Привет мир!!");
  80.                     hide.setImageResource(R.drawable.button_hide);
  81.                     hide.setBackgroundDrawable(null);
  82.                     hideShow=true;
  83.                 }
  84.             }
  85.         });
  86.          
  87.         gallery.setOnItemClickListener(new AdapterView.OnItemClickListener() {
  88.             @Override
  89.             public void onItemClick(AdapterView<?> parent, View v,int position, long id) {
  90.                 try{
  91.                      
  92.                     if(hideShow){
  93.                         applyBlur(description,picture);
  94.                     }
  95.                     else{
  96.                         applyBlur(hide,picture);
  97.                     }
  98.                     picture.setImageBitmap(GalleryAdapter.decodeSampledBitmapFromResource(MainActivity.resourcesApp, DataImg[position], MainActivity.WidthSreenSize, MainActivity.HightSreenSize));
  99.                      
  100.                      
  101.                 }
  102.                 catch(Exception e){
  103.                     e.printStackTrace();
  104.                 }
  105.             }
  106.         });
  107.         applyBlur(description,picture);
  108.         leftImage.post(setBlur);
  109.              
  110.     }
  111.      
  112.     public void applyBlur(final View view,final View image) {
  113.         image.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
  114.             @Override
  115.             public boolean onPreDraw() {
  116.                 image.getViewTreeObserver().removeOnPreDrawListener(this);
  117.                 image.buildDrawingCache();
  118.          
  119.                 Bitmap bmp =  image.getDrawingCache();
  120.                
  121.                 view.setBackgroundDrawable(new BitmapDrawable(MainActivity.resourcesApp, blur(bmp, view)));
  122.                bmp.recycle();
  123.                return true;
  124.              
  125.             }
  126.         });
  127.         //if(view.getBackground()!=null){
  128.          //   leftImage.setImageDrawable(rightImage.getBackground());
  129.           // }
  130.     }
  131. private Bitmap blur(Bitmap bkg, View view) {
  132.          
  133.         float scaleFactor = 8;
  134.         float radius = 20;
  135.        
  136.  
  137.         Bitmap overlay = Bitmap.createBitmap((int) (view.getMeasuredWidth()),
  138.                 (int) (view.getMeasuredHeight()), Bitmap.Config.ARGB_8888);
  139.         Canvas canvas = new Canvas(overlay);
  140.         canvas.translate(-view.getLeft()+15, -view.getTop());
  141.         canvas.drawBitmap(bkg, 0, 0, null);
  142.         overlay = FastBlur.doBlur(overlay, (int)radius, true);
  143.          
  144.              
  145.             return overlay;
  146.              
  147.        }
  148.  
  149. Runnable setBlur= new Runnable() {
  150.     @Override
  151.     public void run() {
  152.      
  153.         applyBlur(rightImage,leftImage);
  154.          
  155.          
  156.     }};
  157.  
  158.     private void setDataImage(){
  159.         Intent intent = getIntent();
  160.         int index = intent.getIntExtra(MediaActivity.EXTRA_MESSAGE, 1);
  161.          
  162.         switch(index){
  163.         case 1:
  164.         DataImg = new int [25];
  165.         DataText= new int [DataImg.length];
  166.         DataImg[0]=R.drawable.arhitektura_01;
  167.         DataImg[1]=R.drawable.arhitektura_02;
  168.         DataImg[2]=R.drawable.arhitektura_03;
  169.         DataImg[3]=R.drawable.arhitektura_04;
  170.         DataImg[4]=R.drawable.arhitektura_05;
  171.         DataImg[5]=R.drawable.arhitektura_06;
  172.         DataImg[6]=R.drawable.arhitektura_07;
  173.         DataImg[7]=R.drawable.arhitektura_17;
  174.         DataImg[8]=R.drawable.arhitektura_18;
  175.         DataImg[9]=R.drawable.arhitektura_19;
  176.         DataImg[10]=R.drawable.arhitektura_20;
  177.         DataImg[11]=R.drawable.arhitektura_21;
  178.         DataImg[12]=R.drawable.arhitektura_22;
  179.         DataImg[13]=R.drawable.arhitektura_23;
  180.         DataImg[14]=R.drawable.arhitektura_26;
  181.         DataImg[15]=R.drawable.arhitektura_27;
  182.         DataImg[16]=R.drawable.arhitektura_28;
  183.         DataImg[17]=R.drawable.arhitektura_31;
  184.         DataImg[18]=R.drawable.arhitektura_32;
  185.         DataImg[19]=R.drawable.arhitektura_35;
  186.         DataImg[20]=R.drawable.arhitektura_36;
  187.         DataImg[21]=R.drawable.arhitektura_37;
  188.         DataImg[22]=R.drawable.arhitektura_38;
  189.         DataImg[23]=R.drawable.arhitektura_42;
  190.         DataImg[24]=R.drawable.arhitektura_45;
  191.          
  192.         break;
  193.         case 2:
  194.             DataImg = new int [8];
  195.             DataText= new int [DataImg.length];
  196.         DataImg[0]=R.drawable.interjeri_09;
  197.         DataImg[1]=R.drawable.interjeri_10;
  198.         DataImg[2]=R.drawable.interjeri_11 ;
  199.         DataImg[3]=R.drawable.interjeri_12;
  200.         DataImg[4]=R.drawable.interjeri_13;
  201.         DataImg[5]=R.drawable.interjeri_14;
  202.         DataImg[6]=R.drawable.interjeri_15;
  203.         DataImg[7]=R.drawable.interjeri_16;
  204.         break;
  205.         case 3:
  206.             DataImg = new int [21];
  207.             DataText= new int [DataImg.length];
  208.         DataImg[0]=R.drawable.inftrastruktura_08;
  209.         DataImg[1]=R.drawable.inftrastruktura_24;
  210.         DataImg[2]=R.drawable.inftrastruktura_25;
  211.         DataImg[3]=R.drawable.inftrastruktura_29;
  212.         DataImg[4]=R.drawable.inftrastruktura_30;
  213.         DataImg[5]=R.drawable.inftrastruktura_33;
  214.         DataImg[6]=R.drawable.inftrastruktura_34;
  215.         DataImg[7]=R.drawable.inftrastruktura_39;
  216.         DataImg[8]=R.drawable.inftrastruktura_40;
  217.         DataImg[9]=R.drawable.inftrastruktura_41;
  218.         DataImg[10]=R.drawable.inftrastruktura_43;
  219.         DataImg[11]=R.drawable.inftrastruktura_44;
  220.         DataImg[12]=R.drawable.inftrastruktura_46;
  221.         DataImg[13]=R.drawable.inftrastruktura_47;
  222.         DataImg[14]=R.drawable.inftrastruktura_48;
  223.         DataImg[15]=R.drawable.inftrastruktura_49;
  224.         DataImg[16]=R.drawable.inftrastruktura_50;
  225.         DataImg[17]=R.drawable.inftrastruktura_51;
  226.         DataImg[18]=R.drawable.inftrastruktura_52;
  227.         DataImg[19]=R.drawable.inftrastruktura_53;
  228.         DataImg[20]=R.drawable.inftrastruktura_54;
  229.          
  230.          
  231.          
  232.         break;
  233.     }
  234.          
  235.     }
  236.      
  237.     @Override
  238.     protected void onDestroy() {
  239.          
  240.          
  241.         super.onDestroy();
  242.     }
  243.      
  244. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement