2012-10-08 3 views
2

2 세를위한 간단한 숫자 플래시 카드 화면을 디자인 중입니다. 레이아웃은 titleheader, Image (flashcard는 1)와 함께 간단합니다. 이미지 (또는 화면의 아무 곳이나)를 클릭하면 다음 이미지 (플래시 카드 2)로 이동해야합니다. 내 질문 - 10 개의 레이아웃을 정의해야합니까? 10 가지 활동? Android 용 코딩의 새로운 항목 - 도움을 주시면 감사하겠습니다.Android : 동일한 레이아웃의 여러 이미지

public void numberClick(View v) { 
     ImageView portrait = (ImageView) findViewById(R.id.numberImage); 

     switch(v.getId()){ 
      case R.drawable.numberone: 
       portrait.setImageResource(R.drawable.numbertwo); 

      case R.drawable.numbertwo: 
       portrait.setImageResource(R.drawable.numberthree); 


     } 

업데이트 코드

public class numberActivity extends Activity { 

ImageView portrait; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.number); 

portrait = (ImageView) findViewById(R.id.numberImage); 

} 

public void numberClick(View v) { 
    switch(v.getId()){ 
      case R.drawable.numberone: 
       portrait.setImageResource(R.drawable.numbertwo); 
       break; 

      case R.drawable.numbertwo: 
       portrait.setImageResource(R.drawable.numberthree); 
       break; 

     } 

} 

}

그러나 결과가 없습니다 아직 거기는 - 이미지가 전환 해달라고. 청취자

public class numberActivity extends Activity { 

ImageView portrait; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.number); 

portrait = (ImageView) findViewById(R.id.numberImage); 

portrait.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     switch(v.getId()){ 
      case R.drawable.numberone: 
       portrait.setImageResource(R.drawable.numbertwo); 
       break; 

      case R.drawable.numbertwo: 
       portrait.setImageResource(R.drawable.numberthree); 
       break; 

     } 

}}); 
}} 
+0

seeSwitcher 또는 viewPager – njzk2

답변

0

Jasma와

업데이트 된 코드는 우선 나는 당신의 원인을 주셔서 감사합니다. Android에는 두 가지 가능성이 있습니다.

  1. 의도 및 활동 사용. 현대적인 방법 (파편)

이 사용는

  • 사용자 상호 작용에 새로운 레이아웃을 생성하는 가능성이다. 원하는 개수의 프래그먼트 및 활동을 가질 수 있습니다. 자세한 내용은 여기에서 http://developer.android.com/reference/android/content/Intent.html 및 여기 http://developer.android.com/guide/components/fragments.html

  • +0

    @jasma 귀하는 귀하의 상황에 맞게 스위치 케이스를 사용할 수 있습니다. –

    +0

    여기서 내가 뭘 잘못하고 있니? 실행 중에 오류가 발생하지 않지만 클릭시 아무런 반응이 없습니다. '공개 무효 numberClick (보기 v) {\t \t \t ImageView portrait = (ImageView) findViewById (R.id.numberImage); \t \t \t 스위치 (v.getId()) { \t \t \t 경우 R.drawable.numberone : \t \t \t \t portrait.setImageResource (R.drawable.numbertwo); \t \t \t \t \t \t 경우 R.drawable.numbertwo : \t \t \t \t portrait.setImageResource (R.drawable.numberthree); 당신은 당신의 스위치 경우 "휴식"이없는 – Jasma

    +0

    는 질문에 코드를 추가합니다. break 문을 넣으면 확실히 작동 할 것입니다. 그것이 당신을 도운다면 내 대답을 수락하십시오. –

    1

    하나의 이미지 뷰로 간단한 레이아웃으로 하나의 활동을 가질 수 있습니다. 클릭시이 이미지 뷰의 새 이미지를 설정하십시오.

    +0

    예, 레이아웃이 아닌 이미지 만 변경하려면 –

    +0

    예, 이미지 만 변경하면됩니다. – Jasma

    +0

    나는 동일한 활동에서 10 개의 이미지를 처리 ​​할 수 ​​있다고 가정하고 있습니까? 2 가지 이미지 변경 코드가 있습니다. private 부울 fuzzyImage = false; public void flipImage (View v) {ImageView portrait = (ImageView) findViewById (R.id.faceImageView); if (fuzzyImage) {portrait.setImageResource (R.drawable.clear_einstein); } else {portrait.setImageResource (R.drawable.fuzzy_einstein); } fuzzyImage =! fuzzyImage; // 다음 번에 상태를 바꾼다} ;;; 하지만이 10 이미지를 추정하는 방법을 잘 모르겠습니다. – Jasma

    관련 문제