2017-07-26 33 views
-2

這是我的代碼:全屏ImageView的密切

final ImageView imageView1 = (ImageView) findViewById(R.id.imageView8); 
    imageView1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      imageView1.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 
        LinearLayout.LayoutParams.MATCH_PARENT)); 
     } 
    }); 

這段代碼當我點擊我的ImageView我可以看到它在全屏。 現在我有一個問題: 當我看到全屏的ImageView我想,當我按下後退,這個ImageView的接近,回到以前的情況和我的應用程序不返回到之前的活動

+0

你需要問一個實際的問題。 – Difster

回答

0

而是然後在全打開圖像屏幕上,您可以使用自定義對話框來打開稱爲完整圖像對話框的圖像,該圖像與AlertDialog完全相同,因此您只需設計包含正在打開的圖像的寬度和高度的自定義佈局即可。很容易維護,因爲點擊屏幕上的任何地方會自動關閉,您的活動將恢復。 如果你想,那麼我可以給你更多的想法?

+0

我是Android的初學者。請爲我發送代碼。謝謝 –

+0

好的,我在我的下一個答案寫代碼給你提示如何實現它 –

+0

感謝我的朋友 –

0

步驟1:一類FullImageDialog有這個方法:

public static void showImage(Context context, String strImagePath) { 
     AlertDialog.Builder imageDialog = new AlertDialog.Builder(context); 
     LayoutInflater inflater = (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE); 
     View layout = inflater.inflate(R.layout.custom_fullimage_dialog, null); 
     ImageView image = (ImageView) layout.findViewById(R.id.fullImage); 

     Glide.with(context) 
       .load(strImagePath) 
       .placeholder(R.drawable.default_user_image) 
       .dontAnimate() 
       .diskCacheStrategy(DiskCacheStrategy.ALL) 
       .into(image); 
     //image.setImageDrawable(tempImageView.getDrawable()); 

     imageDialog.setView(layout); 

     final AlertDialog alert= imageDialog.create(); 
     alert.getWindow().getAttributes().windowAnimations=R.style.FadeInTheme; 
     alert.show(); 
    } 

第2步:創建的XML full_image_dialog爲:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/layout_root" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal"> 

    <ImageView 
     android:id="@+id/fullImage" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:adjustViewBounds="true" 
     android:background="@drawable/default_user_image" 
     android:scaleType="fitXY" /> 

</LinearLayout> 

第3步:在您需要打開此對話框調用方法:

final ImageView imageView1 = (ImageView) findViewById(R.id.imageView8); 
    imageView1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
     //call FullImageDialog class by giving parameter of imageUrl 
     FullImageDialog.showImage(imageUrl); 

}