2011-11-23 4 views
1

일부 코드를 작업하면서 나는 약간의 피클에 빠졌습니다.Android : Viewflipper에 단편을 추가 할 수 있습니까?

내 응용 프로그램의 다양한 페이지를 표시 할 조각이 있습니다. 나는 서로 상호 작용하고자하는 검색 단편과 옵션 단편을 가지고있었습니다. 정상적으로 액세스 할 수있는 조각을 가질 수 있으며 viewflipper를 사용하여 액세스 할 수 있습니까?

Options Fragment에는 viewflipper가있어서 여기에 관련된 다양한 메뉴를 표시 할 수 있습니다. 그러나 Option Fragment의 viewflipper를 통해 검색 기능에 액세스 할 수 있어야하며 동시에 일반 Fragment로 액세스 할 수 있어야합니다 (동시에 탭은 아니지만 탭의 조각을 통해 액세스 할 수 있어야합니다. bar 또는 옵션 Fragment의 viewflipper에서). 나는 viewflipper의 변경보기 활성화하려면 다음 코드를 사용하고 지금까지

:

public void onItemClick(AdapterView<?> av, View v, int pos, long id) { 
         if(moreViewFlipper.getChildAt(1) != null)//Check if any previously checked views 
         { 
          moreViewFlipper.removeViewAt(1); 
         } 
         switch(pos){ 
         case 0: // Profile 
          moreViewFlipper.addView(createProfileView(ctx), 1); 
          moreViewFlipper.setInAnimation(SlideAnimation.inFromRightAnimation()); 
          moreViewFlipper.setOutAnimation(SlideAnimation.outToLeftAnimation()); 
          moreViewFlipper.setDisplayedChild(1); 
          break; 
... 

가합니다 (moreViewFlipper에 아이로 조각의보기를 추가하는 위의 코드를 사용할 수 있습니다을 나는 감사하겠습니다 사람이 좀 도와 수 있다면


편집 :.. 친구가 아주 친절하게 내가 몇 가지 실험 후에이 작업을 수행 할 수있는 방법을 지적하는 관리 분명히, 그것은보기 내에서 조각을 배치 할 수 당신이 경우 장소를 그것에서 th 조각을 추가 할보기를 보유하고있는 xml 파일.

이 경우 필자는 새로운 xml 파일을 생성하고 Linearview 안에 다시 버튼이있는 조각을 배치했습니다. 위의 코드를 사용하여 뷰를 부 풀린 뷰 함수를 호출하여 viewflipper 및 voala에 가져 왔습니다. 그것은 당신이 당신의 프래그먼트와 다른 ID를 가지고있는 한 (원래의 경우, 2 개의 인스턴스에서 호출되는 경우) 작동합니다.

다시 말씀 드리지만, 시간 낭비로 인해 불편을 끼쳐 드려 죄송합니다.

+0

예, 그것은 가능 ... 나 아니, 그렇지 ... 그것은 따라 달라집니다 당신이 버튼을 하드웨어를 다시 처리하는 경우

는 기본 조각 활동에 그런 뭔가를 넣어 createProfileView, moreViewFlipper, SlideAnimation.inFromRightAnimation, SlideAnimation.outToLeftAnimation ... 조각에 의해 당신은 안드로이드에서 조각? ... 다른 말로하면 ... 마법의 구슬없이 그 질문에 대답하는 것이 불가능합니다 – Selvin

+0

질문의 모호함, 긴 하루를 유감스럽게 생각합니다. MoreViewFlipper는 안드로이드 Fragment optionsFragment 안의 viewflipper입니다. creatprofileview는 옵션 부분에 뷰를 생성하기 만하면 사용자 정보를 표시 할 수 있습니다. Viewflipper에 Android Fragment를 추가 할 수 있다면 궁금 할 것입니다. Fragment 자체는 뷰 내에 있습니다. – SKato

+1

정확하게 이해한다면 Wana가 Fragment를 Fragment에 추가합니까? 그게 가능하지 않다 ... 나는 같은 문제에 직면했다. 나는 왼쪽에 listview fragment를 가지고 있었고, 자세한 내용은 fragment 세부 사항을 볼 수있다. 그래서 나는 wana를 사용한다. 그러나 연구 후에 나는 그것을 발견했다. 조각으로 파편을 가질 수 없습니다 ... 사용자 정의보기로 끝났습니다 ... – Selvin

답변

0

죄송합니다. 하지만 다른 사람이 비슷한 문제가있을 수 있습니다.

ViewPager를 사용하는 경우 ViewFlipper와 Fragments를 결합 할 수 있습니다. mainPlayout.xml의 ViewFlipper 노드에 ViewPager -node를 두라. 작업 표시 줄은 계속 그 자리에 있으며 다른보기로 쉽게 뒤집을 수 있습니다.

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if(keyCode == KeyEvent.KEYCODE_BACK) 
    { 
     if(this.vf.getCurrentView() != this.findViewById(R.id.pager))  //vf is a ViewFlipper's instance 
     { 
      this.vf.showPrevious(); 
      return true; 
     } 
    } 

    return super.onKeyDown(keyCode, event); 
} 
관련 문제