2014-12-03 7 views
2

하나의 이미지가있는 갤러리처럼 ImageView에서 전체 화면으로 이미지를 열어야합니다! 내가 어떻게 그럴 수 있니?ImageView에서 클릭하면 전체 화면으로 이미지를 표시하는 방법?

+1

아마도이 튜토리얼 [보기 확대/축소] (http://developer.android.com/training/animation/zoom.html)를 따르고 싶습니다. –

+0

나는 이미지 뷰에 shema를 추가했으나 shema가 명확하지 않지만, 나는이 이미지 뷰를 클릭 할 때 shema 전체 화면으로 표시한다. 어디에서 시작해야할지 모르겠다. 나의 가난한 영어를 용서해라./그녀는 스크린 샷이다. ==> http://img15.hostingpics.net/pics/ 805298Capture.jpg – Anass

+0

michal.z 감사합니다. 내가 필요로하는 것이 = DI가 지금 시도 할 것입니다. – Anass

답변

3

이 기본적인 예입니다

레이아웃 activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="center"> 

     <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:adjustViewBounds="true" 
      android:src="@drawable/ic_launcher"/> 

    </LinearLayout> 

onCreate() 방법 :

private boolean zoomOut = false; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    final ImageView imageView = (ImageView)findViewById(R.id.imageView1); 
    imageView .setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
       if(zoomOut) { 
       Toast.makeText(getApplicationContext(), "NORMAL SIZE!", Toast.LENGTH_LONG).show(); 
        imageView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT)); 
        imageView.setAdjustViewBounds(true); 
        zoomOut =false; 
       }else{ 
       Toast.makeText(getApplicationContext(), "FULLSCREEN!", Toast.LENGTH_LONG).show(); 
        imageView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT)); 
        imageView.setScaleType(ImageView.ScaleType.FIT_XY); 
        zoomOut = true; 
       } 
      }     
    }); 
} 
+0

코드를 편집하여 축소하고, 이미지를 클릭하면 편집 할 수 있습니다. – Jorgesys

+1

귀하의 대답은 나를 위해 작동하지 않습니다 : ( – Tony

+0

@ 토니 귀하의 문제와 함께 질문을 게시, 나는이 코드를 직접 테스트하고 작동합니다! – Jorgesys

2

Jorgesys의 대답은 좋지만, 이미지 정말 전체 화면을 만들기 위해 더 나은 방법은 .NoActionBar.Fullscreen 테마로 새로운 대화/활동을 만드는 것입니다. 예 :

<style name="FullScreenDialogTheme" parent="android:Theme.Material.NoActionBar.Fullscreen"/> 

이 대화 상자에는 이미지의 이미지보기 만 포함됩니다.

그러면 드로어 블 또는 드로어 블에 대한 참조를 인 텐트를 통해이 새 드로잉에 전달합니다. 자세한 내용은 this 질문을 확인하십시오. (나는 효율성에 대한 우려를 위해 몇 가지 참조를 통해 전달하는 것이 좋습니다).

관련 문제