2011-11-21 1 views
2

Sencha Touch 내에서 명시 적으로 덮어 쓰지 않는 한 모든 구성 요소에 적용되는 "밝음"또는 "어두움"과 같은 기본 UI를 정의 할 수 있습니까?Sencha Touch의 모든 구성 요소에 기본 UI 설정

목표는 모든 요소에 대해 ui: "dark" 또는 사용자 지정 UI를 선언하지 않아도되도록하는 것입니다.

건배!

답변

2

이 작업을 시도 할 수 있습니다 :

Ext.apply(Ext.Component.prototype, { 
    getUi: function() { 
     var defaultUi = 'light'; 
     // value of [this.config.ui] is ignored here 
     // we can use something like forcedUi 
     return (this.forcedUi) ? this.forcedUi : defaultUi; 
    } 
}) 
이 코드의 단점은 우리가 (getUI에를 통해 '빛'(때문에 변수 'UI'에서 UI 다른 적용하기위한 또 다른 변수를 지정해야한다는 것입니다

)는 항상 수익을 나는 터치 1.1에 붙어

... 
items: [{ 
    xtype: 'button', 
    forcedUi: 'dark' 
}] 
... 
0

나는 당신이 sencha touch 스타일과 테마에 대해 알고 있다고 가정합니다. 그렇지 않으면 당신은 그들이 즉, 당신은 기본 색을 지정할 수 있습니다하는 SCS 파일에 대한

을 언급하는 ... 그것에서

http://f.cl.ly/items/d9df79f57b67e6e876c6/SenchaTouchThemes.pdf

을 명확하게 작업을 수행하는 방법에 대한 설명이 링크에서 PDF 파일을 다운로드 할 수 있습니다

$ base-color : # 4bb8f0; $ base-gradient : '광택';

그런 다음 실행하십시오. 언급 한 색상과 그라데이션으로 만들어진 툴바와 버튼을 볼 수 있습니다.

+0

고마워요,하지만 이미 끝났습니다. 내 말은, 코드 전반에 걸쳐'x-carousel-dark'와 같은'class' 속성을 가진 요소들이 있다는 것입니다. 모든 요소가 '어둡다'는 것 같습니다. 나는 그걸 내 것으로 바꿔주기를 바랐다. –

1

그렇게 sunsay의 솔루션은 나를 위해 작동하지 않았다, 그러나 이것은했다 :) '빛'

Ext.CustomToolbar = Ext.extend(Ext.Toolbar, 
{ 
    ui:'app' 
}); 
Ext.reg('toolbar', Ext.CustomToolbar); 

그래도 여전히 구성 요소 유형에 따라 다르지만 구성 요소 별 인스턴스가 아닙니다. 그리고 "reg"를 덮어 쓸 수 있기 때문에, 장소 전체에 커스텀 x-type을 사용할 필요가 없습니다.

관련 문제