2013-01-10 5 views
0

탭 패널에서 탭 모음 제목을 변경할 수 없습니다.sencha touch 탭 막대에서 제목을 변경하는 방법

편집 : 저는 테스트 응용 프로그램 마녀가 주 탭 패널에서 다른 세 가지보기로 구성되어 있습니다 (Sencha-Touch 설명서의 "시작하기 비디오"와 유사).

이제 로컬 리 제이션을 위해 탭 모음의 아이콘 아래에있는 레이블을 dinamically 변경하여 패널에 대한 세 개의 링크를 나타냅니다.

아래 코드에서 레이블의 "홈"즉보기의 제목 인 것처럼 관련보기의 제목을 변경하여 첫 번째 단추의 레이블을 변경하려고했습니다. 보기의 "활성화"이벤트에서이 작업을 수행하려고합니다. 이 코드의 결과는 홈보기의 제목을 기록하면 변경되지만 탭 막대 단추 레이블은 그대로 유지된다는 것입니다.

버튼을 "새로 고침"하는 것과 같은 것을 놓친 것 같지만 설명서에서이 주제에 대해 아무 것도 찾을 수 없습니다. 이 편집이 내 질문에 대해 더 잘 설명해주기를 바랍니다.

Ext.define('lvzMobile.view.Main', { 
extend: 'Ext.tab.Panel', 
requires: ['Ext.TitleBar'], 
xtype: 'main', 

config: { 
    tabBarPosition: "bottom", 

    items: [ 
     { 
      xtype: 'homePanel', 
      id: 'home', 
     }, 
     { 
      xtype: 'catalogue', 
      id: 'catalogue' 
     }, 
     { 
      xtype: 'infoPanel', 
      id: 'info' 
     } 
    ], 

    listeners: { 
     activate: function() { 
      console.log("activate"); 
      this.getAt(0).setTitle("emoh"); 
      //the title changes but nothing happens in the tabbar... 
     } 
    } 
} 
}); 

, 당신이 나를 도울 수하십시오 : 여기

코드인가? 나는 틀린 것을 이해할 수 없다. 라고

+0

탭바에서 어떻게 될 것으로 예상됩니까? ...? –

+0

"Home"아이콘 아래의 레이블에 "emoh"라는 텍스트가 표시 될 것으로 예상됩니다.이 이미지를 참조하십시오. http://i46.tinypic.com/2i7pn7.jpg –

답변

3

라인 :

this.getAt(0).setTitle('emoh') 

이 ... 버튼 자체를 당신의 panel의 제목을 변경할 수 있지만하지 않습니다. 버튼 텍스트를 변경하려면 다음을 사용하십시오.

this.getTabBar().getAt(0).setTitle('emoh') 

Here's a fiddle with your code

여기에 팁이 있습니다. xtype: 'main' 대신 alias: 'widget.main'을 사용하십시오. xtype은 configs이고 alias은 나중에 xtype으로 사용할 수있는 별칭을 정의하기위한 것입니다 (위젯으로 사용하려면 widget. 접두어로 사용하고 상점으로 사용하려면 store. 등).

+0

설명 주셔서 감사합니다. Attila, 그게 꼭 필요한 것입니다. !!! –

관련 문제