그래서 Alloy를 사용하는 간단한 탭 Titanium Mobile 애플리케이션이 있습니다. 세금 탭의 버튼을 통해 새보기를 열려고합니다.
index.xml (보기)
<Alloy>
<TabGroup>
<Require src="taxes" />
</TabGroup>
tax.xml (보기)
<Alloy>
<Tab id="taxes" title="Taxes" icon="taxes.png">
<Window title="Taxes" class="container">
<Toolbar bottom="0">
<Items>
<Button id="newrecord" title="New Record" onClick="newRecord"></Button>
</Items>
</Toolbar>
</Window>
</Tab>
tax.js (컨트롤러)
var args = arguments[0] || {};
function newRecord() {
var new_record_view = Alloy.createController('newrecord').getView();
new_record_view.open();
}
newrecord.xml (보기)
<Alloy>
<Window title="New Record" class="container" id="newrecord">
New Record
</Window>
</Alloy>
버튼을 클릭하면 모든 것이 멈 춥니 다.
tax.js의 newRecord () 함수에 대한 코드를 현재 탭에서 열도록 변경하려고하면 아래 오류가 발생합니다.
tax.js (컨트롤러)
function newRecord() {
var new_record_view = Alloy.createController('newrecord');
new_record_view.openMainWindow($.taxes);
}
newrecord.js (컨트롤러)
exports.openMainWindow = function(_tab) {
_tab.open($.newrecord);
}
[ERROR] : Script Error {
[ERROR] : backtrace = "#0 () at :0";
[ERROR] : line = 31;
[ERROR] : message = "Invalid type passed to function";
[ERROR] : nativeLocation = "-[TiUITabProxy openWindow:] (TiUITabProxy.m:225)";
[ERROR] : nativeReason = "expected: TiWindowProxy, was: (null)";
[ERROR] : sourceId = 301260640;
[ERROR] : sourceURL = "file:///Users/dimitar/Library/Application%20Support/iPhone%20Simulator/7.1/Applications/8FD72932-FC27-43D4-9D3D-33F34F3E3039/autoservice.app/alloy/controllers/taxes.js";
[ERROR] : }
편집하다:
그래서 문제는 새 레코드 대신 id child_window로 창을 열려고한다는 것입니다. 이제 오류가없고 창이 열리지 만 비디오에서 볼 수있는 매우 종류의 결함이있는 것 같습니다.
따라서 기본적으로 문제를 일으키는 창 ID를 잘못 입력했으며 "글리치"는 밝은 배경의 창에서 어두운 배경의 창으로 빠르게 전환하는 애니메이션에 지나지 않습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다